diff --git a/Cargo.toml b/Cargo.toml
index 948bf2e0b6ae8c03b53f93babb816585d04bc062..4705f69c38bf8fc6043b2a31be03eb1bbda9bea3 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -9,5 +9,6 @@ name = "stm32f40x"
 version = "0.1.0"
 
 [dependencies]
-cortex-m = "0.2.0"
+#cortex-m = "0.2.4"
 vcell = "0.1.0"
+cortex-m = { path = "../cortex-m",default-features = false }
\ No newline at end of file
diff --git a/src/lib.rs b/src/lib.rs
index 232224c7b5bc1134fe28b7082871d15034b6cb92..60d1400b1ca76d4352c1270aabaa42515ec95504 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1 +1,314951 @@
-# ! [ doc = "Peripheral access API for STM32F40X microcontrollers (generated using svd2rust v0.6.1)" ] # ! [ deny ( missing_docs ) ] # ! [ deny ( warnings ) ] # ! [ feature ( const_fn ) ] # ! [ no_std ] extern crate cortex_m ; extern crate vcell ; use core :: ops :: Deref ; use cortex_m :: peripheral :: Peripheral ; # [ doc = r" Interrupts" ] pub mod interrupt { use cortex_m :: ctxt :: Context ; use cortex_m :: exception ; use cortex_m :: interrupt :: Nr ; # [ doc = "0 - Window Watchdog interrupt" ] pub struct Wwdg { _0 : ( ) } unsafe impl Context for Wwdg { } unsafe impl Nr for Wwdg { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 0 } } # [ doc = "1 - PVD through EXTI line detection interrupt" ] pub struct Pvd { _0 : ( ) } unsafe impl Context for Pvd { } unsafe impl Nr for Pvd { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 1 } } # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ] pub struct TampStamp { _0 : ( ) } unsafe impl Context for TampStamp { } unsafe impl Nr for TampStamp { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 2 } } # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ] pub struct RtcWkup { _0 : ( ) } unsafe impl Context for RtcWkup { } unsafe impl Nr for RtcWkup { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 3 } } # [ doc = "5 - RCC global interrupt" ] pub struct Rcc { _0 : ( ) } unsafe impl Context for Rcc { } unsafe impl Nr for Rcc { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 5 } } # [ doc = "6 - EXTI Line0 interrupt" ] pub struct Exti0 { _0 : ( ) } unsafe impl Context for Exti0 { } unsafe impl Nr for Exti0 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 6 } } # [ doc = "7 - EXTI Line1 interrupt" ] pub struct Exti1 { _0 : ( ) } unsafe impl Context for Exti1 { } unsafe impl Nr for Exti1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 7 } } # [ doc = "8 - EXTI Line2 interrupt" ] pub struct Exti2 { _0 : ( ) } unsafe impl Context for Exti2 { } unsafe impl Nr for Exti2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 8 } } # [ doc = "9 - EXTI Line3 interrupt" ] pub struct Exti3 { _0 : ( ) } unsafe impl Context for Exti3 { } unsafe impl Nr for Exti3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 9 } } # [ doc = "10 - EXTI Line4 interrupt" ] pub struct Exti4 { _0 : ( ) } unsafe impl Context for Exti4 { } unsafe impl Nr for Exti4 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 10 } } # [ doc = "11 - DMA1 Stream0 global interrupt" ] pub struct Dma1Stream0 { _0 : ( ) } unsafe impl Context for Dma1Stream0 { } unsafe impl Nr for Dma1Stream0 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 11 } } # [ doc = "12 - DMA1 Stream1 global interrupt" ] pub struct Dma1Stream1 { _0 : ( ) } unsafe impl Context for Dma1Stream1 { } unsafe impl Nr for Dma1Stream1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 12 } } # [ doc = "13 - DMA1 Stream2 global interrupt" ] pub struct Dma1Stream2 { _0 : ( ) } unsafe impl Context for Dma1Stream2 { } unsafe impl Nr for Dma1Stream2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 13 } } # [ doc = "14 - DMA1 Stream3 global interrupt" ] pub struct Dma1Stream3 { _0 : ( ) } unsafe impl Context for Dma1Stream3 { } unsafe impl Nr for Dma1Stream3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 14 } } # [ doc = "15 - DMA1 Stream4 global interrupt" ] pub struct Dma1Stream4 { _0 : ( ) } unsafe impl Context for Dma1Stream4 { } unsafe impl Nr for Dma1Stream4 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 15 } } # [ doc = "16 - DMA1 Stream5 global interrupt" ] pub struct Dma1Stream5 { _0 : ( ) } unsafe impl Context for Dma1Stream5 { } unsafe impl Nr for Dma1Stream5 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 16 } } # [ doc = "17 - DMA1 Stream6 global interrupt" ] pub struct Dma1Stream6 { _0 : ( ) } unsafe impl Context for Dma1Stream6 { } unsafe impl Nr for Dma1Stream6 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 17 } } # [ doc = "18 - ADC3 global interrupts" ] pub struct Adc { _0 : ( ) } unsafe impl Context for Adc { } unsafe impl Nr for Adc { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 18 } } # [ doc = "19 - CAN1 TX interrupts" ] pub struct Can1Tx { _0 : ( ) } unsafe impl Context for Can1Tx { } unsafe impl Nr for Can1Tx { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 19 } } # [ doc = "20 - CAN1 RX0 interrupts" ] pub struct Can1Rx0 { _0 : ( ) } unsafe impl Context for Can1Rx0 { } unsafe impl Nr for Can1Rx0 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 20 } } # [ doc = "21 - CAN1 RX1 interrupts" ] pub struct Can1Rx1 { _0 : ( ) } unsafe impl Context for Can1Rx1 { } unsafe impl Nr for Can1Rx1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 21 } } # [ doc = "22 - CAN1 SCE interrupt" ] pub struct Can1Sce { _0 : ( ) } unsafe impl Context for Can1Sce { } unsafe impl Nr for Can1Sce { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 22 } } # [ doc = "23 - EXTI Line[9:5] interrupts" ] pub struct Exti95 { _0 : ( ) } unsafe impl Context for Exti95 { } unsafe impl Nr for Exti95 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 23 } } # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ] pub struct Tim1BrkTim9 { _0 : ( ) } unsafe impl Context for Tim1BrkTim9 { } unsafe impl Nr for Tim1BrkTim9 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 24 } } # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ] pub struct Tim1UpTim10 { _0 : ( ) } unsafe impl Context for Tim1UpTim10 { } unsafe impl Nr for Tim1UpTim10 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 25 } } # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ] pub struct Tim1TrgComTim11 { _0 : ( ) } unsafe impl Context for Tim1TrgComTim11 { } unsafe impl Nr for Tim1TrgComTim11 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 26 } } # [ doc = "27 - TIM1 Capture Compare interrupt" ] pub struct Tim1Cc { _0 : ( ) } unsafe impl Context for Tim1Cc { } unsafe impl Nr for Tim1Cc { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 27 } } # [ doc = "28 - TIM2 global interrupt" ] pub struct Tim2 { _0 : ( ) } unsafe impl Context for Tim2 { } unsafe impl Nr for Tim2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 28 } } # [ doc = "29 - TIM3 global interrupt" ] pub struct Tim3 { _0 : ( ) } unsafe impl Context for Tim3 { } unsafe impl Nr for Tim3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 29 } } # [ doc = "30 - TIM4 global interrupt" ] pub struct Tim4 { _0 : ( ) } unsafe impl Context for Tim4 { } unsafe impl Nr for Tim4 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 30 } } # [ doc = "31 - I2C1 event interrupt" ] pub struct I2c1Ev { _0 : ( ) } unsafe impl Context for I2c1Ev { } unsafe impl Nr for I2c1Ev { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 31 } } # [ doc = "32 - I2C1 error interrupt" ] pub struct I2c1Er { _0 : ( ) } unsafe impl Context for I2c1Er { } unsafe impl Nr for I2c1Er { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 32 } } # [ doc = "33 - I2C2 event interrupt" ] pub struct I2c2Ev { _0 : ( ) } unsafe impl Context for I2c2Ev { } unsafe impl Nr for I2c2Ev { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 33 } } # [ doc = "34 - I2C2 error interrupt" ] pub struct I2c2Er { _0 : ( ) } unsafe impl Context for I2c2Er { } unsafe impl Nr for I2c2Er { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 34 } } # [ doc = "35 - SPI1 global interrupt" ] pub struct Spi1 { _0 : ( ) } unsafe impl Context for Spi1 { } unsafe impl Nr for Spi1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 35 } } # [ doc = "36 - SPI2 global interrupt" ] pub struct Spi2 { _0 : ( ) } unsafe impl Context for Spi2 { } unsafe impl Nr for Spi2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 36 } } # [ doc = "37 - USART1 global interrupt" ] pub struct Usart1 { _0 : ( ) } unsafe impl Context for Usart1 { } unsafe impl Nr for Usart1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 37 } } # [ doc = "38 - USART2 global interrupt" ] pub struct Usart2 { _0 : ( ) } unsafe impl Context for Usart2 { } unsafe impl Nr for Usart2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 38 } } # [ doc = "39 - USART3 global interrupt" ] pub struct Usart3 { _0 : ( ) } unsafe impl Context for Usart3 { } unsafe impl Nr for Usart3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 39 } } # [ doc = "40 - EXTI Line[15:10] interrupts" ] pub struct Exti1510 { _0 : ( ) } unsafe impl Context for Exti1510 { } unsafe impl Nr for Exti1510 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 40 } } # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ] pub struct RtcAlarm { _0 : ( ) } unsafe impl Context for RtcAlarm { } unsafe impl Nr for RtcAlarm { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 41 } } # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ] pub struct OtgFsWkup { _0 : ( ) } unsafe impl Context for OtgFsWkup { } unsafe impl Nr for OtgFsWkup { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 42 } } # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ] pub struct Tim8BrkTim12 { _0 : ( ) } unsafe impl Context for Tim8BrkTim12 { } unsafe impl Nr for Tim8BrkTim12 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 43 } } # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ] pub struct Tim8UpTim13 { _0 : ( ) } unsafe impl Context for Tim8UpTim13 { } unsafe impl Nr for Tim8UpTim13 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 44 } } # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ] pub struct Tim8TrgComTim14 { _0 : ( ) } unsafe impl Context for Tim8TrgComTim14 { } unsafe impl Nr for Tim8TrgComTim14 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 45 } } # [ doc = "46 - TIM8 Capture Compare interrupt" ] pub struct Tim8Cc { _0 : ( ) } unsafe impl Context for Tim8Cc { } unsafe impl Nr for Tim8Cc { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 46 } } # [ doc = "47 - DMA1 Stream7 global interrupt" ] pub struct Dma1Stream7 { _0 : ( ) } unsafe impl Context for Dma1Stream7 { } unsafe impl Nr for Dma1Stream7 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 47 } } # [ doc = "48 - FSMC global interrupt" ] pub struct Fsmc { _0 : ( ) } unsafe impl Context for Fsmc { } unsafe impl Nr for Fsmc { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 48 } } # [ doc = "49 - SDIO global interrupt" ] pub struct Sdio { _0 : ( ) } unsafe impl Context for Sdio { } unsafe impl Nr for Sdio { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 49 } } # [ doc = "50 - TIM5 global interrupt" ] pub struct Tim5 { _0 : ( ) } unsafe impl Context for Tim5 { } unsafe impl Nr for Tim5 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 50 } } # [ doc = "51 - SPI3 global interrupt" ] pub struct Spi3 { _0 : ( ) } unsafe impl Context for Spi3 { } unsafe impl Nr for Spi3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 51 } } # [ doc = "52 - UART4 global interrupt" ] pub struct Uart4 { _0 : ( ) } unsafe impl Context for Uart4 { } unsafe impl Nr for Uart4 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 52 } } # [ doc = "53 - UART5 global interrupt" ] pub struct Uart5 { _0 : ( ) } unsafe impl Context for Uart5 { } unsafe impl Nr for Uart5 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 53 } } # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ] pub struct Tim6Dac { _0 : ( ) } unsafe impl Context for Tim6Dac { } unsafe impl Nr for Tim6Dac { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 54 } } # [ doc = "55 - TIM7 global interrupt" ] pub struct Tim7 { _0 : ( ) } unsafe impl Context for Tim7 { } unsafe impl Nr for Tim7 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 55 } } # [ doc = "56 - DMA2 Stream0 global interrupt" ] pub struct Dma2Stream0 { _0 : ( ) } unsafe impl Context for Dma2Stream0 { } unsafe impl Nr for Dma2Stream0 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 56 } } # [ doc = "57 - DMA2 Stream1 global interrupt" ] pub struct Dma2Stream1 { _0 : ( ) } unsafe impl Context for Dma2Stream1 { } unsafe impl Nr for Dma2Stream1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 57 } } # [ doc = "58 - DMA2 Stream2 global interrupt" ] pub struct Dma2Stream2 { _0 : ( ) } unsafe impl Context for Dma2Stream2 { } unsafe impl Nr for Dma2Stream2 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 58 } } # [ doc = "59 - DMA2 Stream3 global interrupt" ] pub struct Dma2Stream3 { _0 : ( ) } unsafe impl Context for Dma2Stream3 { } unsafe impl Nr for Dma2Stream3 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 59 } } # [ doc = "60 - DMA2 Stream4 global interrupt" ] pub struct Dma2Stream4 { _0 : ( ) } unsafe impl Context for Dma2Stream4 { } unsafe impl Nr for Dma2Stream4 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 60 } } # [ doc = "61 - Ethernet global interrupt" ] pub struct Eth { _0 : ( ) } unsafe impl Context for Eth { } unsafe impl Nr for Eth { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 61 } } # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ] pub struct EthWkup { _0 : ( ) } unsafe impl Context for EthWkup { } unsafe impl Nr for EthWkup { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 62 } } # [ doc = "63 - CAN2 TX interrupts" ] pub struct Can2Tx { _0 : ( ) } unsafe impl Context for Can2Tx { } unsafe impl Nr for Can2Tx { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 63 } } # [ doc = "64 - CAN2 RX0 interrupts" ] pub struct Can2Rx0 { _0 : ( ) } unsafe impl Context for Can2Rx0 { } unsafe impl Nr for Can2Rx0 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 64 } } # [ doc = "65 - CAN2 RX1 interrupts" ] pub struct Can2Rx1 { _0 : ( ) } unsafe impl Context for Can2Rx1 { } unsafe impl Nr for Can2Rx1 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 65 } } # [ doc = "66 - CAN2 SCE interrupt" ] pub struct Can2Sce { _0 : ( ) } unsafe impl Context for Can2Sce { } unsafe impl Nr for Can2Sce { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 66 } } # [ doc = "67 - USB On The Go FS global interrupt" ] pub struct OtgFs { _0 : ( ) } unsafe impl Context for OtgFs { } unsafe impl Nr for OtgFs { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 67 } } # [ doc = "68 - DMA2 Stream5 global interrupt" ] pub struct Dma2Stream5 { _0 : ( ) } unsafe impl Context for Dma2Stream5 { } unsafe impl Nr for Dma2Stream5 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 68 } } # [ doc = "69 - DMA2 Stream6 global interrupt" ] pub struct Dma2Stream6 { _0 : ( ) } unsafe impl Context for Dma2Stream6 { } unsafe impl Nr for Dma2Stream6 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 69 } } # [ doc = "70 - DMA2 Stream7 global interrupt" ] pub struct Dma2Stream7 { _0 : ( ) } unsafe impl Context for Dma2Stream7 { } unsafe impl Nr for Dma2Stream7 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 70 } } # [ doc = "71 - USART6 global interrupt" ] pub struct Usart6 { _0 : ( ) } unsafe impl Context for Usart6 { } unsafe impl Nr for Usart6 { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 71 } } # [ doc = "72 - I2C3 event interrupt" ] pub struct I2c3Ev { _0 : ( ) } unsafe impl Context for I2c3Ev { } unsafe impl Nr for I2c3Ev { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 72 } } # [ doc = "73 - I2C3 error interrupt" ] pub struct I2c3Er { _0 : ( ) } unsafe impl Context for I2c3Er { } unsafe impl Nr for I2c3Er { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 73 } } # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ] pub struct OtgHsEp1Out { _0 : ( ) } unsafe impl Context for OtgHsEp1Out { } unsafe impl Nr for OtgHsEp1Out { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 74 } } # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ] pub struct OtgHsEp1In { _0 : ( ) } unsafe impl Context for OtgHsEp1In { } unsafe impl Nr for OtgHsEp1In { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 75 } } # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ] pub struct OtgHsWkup { _0 : ( ) } unsafe impl Context for OtgHsWkup { } unsafe impl Nr for OtgHsWkup { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 76 } } # [ doc = "77 - USB On The Go HS global interrupt" ] pub struct OtgHs { _0 : ( ) } unsafe impl Context for OtgHs { } unsafe impl Nr for OtgHs { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 77 } } # [ doc = "78 - DCMI global interrupt" ] pub struct Dcmi { _0 : ( ) } unsafe impl Context for Dcmi { } unsafe impl Nr for Dcmi { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 78 } } # [ doc = "81 - FPU interrupt" ] pub struct Fpu { _0 : ( ) } unsafe impl Context for Fpu { } unsafe impl Nr for Fpu { # [ inline ( always ) ] fn nr ( & self ) -> u8 { 81 } } use cortex_m :: Reserved ; # [ doc = r" Interrupt handlers" ] # [ allow ( non_snake_case ) ] # [ repr ( C ) ] pub struct Handlers { # [ doc = "0 - Window Watchdog interrupt" ] pub Wwdg : extern "C" fn ( Wwdg ) , # [ doc = "1 - PVD through EXTI line detection interrupt" ] pub Pvd : extern "C" fn ( Pvd ) , # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ] pub TampStamp : extern "C" fn ( TampStamp ) , # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ] pub RtcWkup : extern "C" fn ( RtcWkup ) , # [ doc = r" Reserved spot in the vector table" ] pub _reserved0 : [ Reserved ; 1 ] , # [ doc = "5 - RCC global interrupt" ] pub Rcc : extern "C" fn ( Rcc ) , # [ doc = "6 - EXTI Line0 interrupt" ] pub Exti0 : extern "C" fn ( Exti0 ) , # [ doc = "7 - EXTI Line1 interrupt" ] pub Exti1 : extern "C" fn ( Exti1 ) , # [ doc = "8 - EXTI Line2 interrupt" ] pub Exti2 : extern "C" fn ( Exti2 ) , # [ doc = "9 - EXTI Line3 interrupt" ] pub Exti3 : extern "C" fn ( Exti3 ) , # [ doc = "10 - EXTI Line4 interrupt" ] pub Exti4 : extern "C" fn ( Exti4 ) , # [ doc = "11 - DMA1 Stream0 global interrupt" ] pub Dma1Stream0 : extern "C" fn ( Dma1Stream0 ) , # [ doc = "12 - DMA1 Stream1 global interrupt" ] pub Dma1Stream1 : extern "C" fn ( Dma1Stream1 ) , # [ doc = "13 - DMA1 Stream2 global interrupt" ] pub Dma1Stream2 : extern "C" fn ( Dma1Stream2 ) , # [ doc = "14 - DMA1 Stream3 global interrupt" ] pub Dma1Stream3 : extern "C" fn ( Dma1Stream3 ) , # [ doc = "15 - DMA1 Stream4 global interrupt" ] pub Dma1Stream4 : extern "C" fn ( Dma1Stream4 ) , # [ doc = "16 - DMA1 Stream5 global interrupt" ] pub Dma1Stream5 : extern "C" fn ( Dma1Stream5 ) , # [ doc = "17 - DMA1 Stream6 global interrupt" ] pub Dma1Stream6 : extern "C" fn ( Dma1Stream6 ) , # [ doc = "18 - ADC3 global interrupts" ] pub Adc : extern "C" fn ( Adc ) , # [ doc = "19 - CAN1 TX interrupts" ] pub Can1Tx : extern "C" fn ( Can1Tx ) , # [ doc = "20 - CAN1 RX0 interrupts" ] pub Can1Rx0 : extern "C" fn ( Can1Rx0 ) , # [ doc = "21 - CAN1 RX1 interrupts" ] pub Can1Rx1 : extern "C" fn ( Can1Rx1 ) , # [ doc = "22 - CAN1 SCE interrupt" ] pub Can1Sce : extern "C" fn ( Can1Sce ) , # [ doc = "23 - EXTI Line[9:5] interrupts" ] pub Exti95 : extern "C" fn ( Exti95 ) , # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ] pub Tim1BrkTim9 : extern "C" fn ( Tim1BrkTim9 ) , # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ] pub Tim1UpTim10 : extern "C" fn ( Tim1UpTim10 ) , # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ] pub Tim1TrgComTim11 : extern "C" fn ( Tim1TrgComTim11 ) , # [ doc = "27 - TIM1 Capture Compare interrupt" ] pub Tim1Cc : extern "C" fn ( Tim1Cc ) , # [ doc = "28 - TIM2 global interrupt" ] pub Tim2 : extern "C" fn ( Tim2 ) , # [ doc = "29 - TIM3 global interrupt" ] pub Tim3 : extern "C" fn ( Tim3 ) , # [ doc = "30 - TIM4 global interrupt" ] pub Tim4 : extern "C" fn ( Tim4 ) , # [ doc = "31 - I2C1 event interrupt" ] pub I2c1Ev : extern "C" fn ( I2c1Ev ) , # [ doc = "32 - I2C1 error interrupt" ] pub I2c1Er : extern "C" fn ( I2c1Er ) , # [ doc = "33 - I2C2 event interrupt" ] pub I2c2Ev : extern "C" fn ( I2c2Ev ) , # [ doc = "34 - I2C2 error interrupt" ] pub I2c2Er : extern "C" fn ( I2c2Er ) , # [ doc = "35 - SPI1 global interrupt" ] pub Spi1 : extern "C" fn ( Spi1 ) , # [ doc = "36 - SPI2 global interrupt" ] pub Spi2 : extern "C" fn ( Spi2 ) , # [ doc = "37 - USART1 global interrupt" ] pub Usart1 : extern "C" fn ( Usart1 ) , # [ doc = "38 - USART2 global interrupt" ] pub Usart2 : extern "C" fn ( Usart2 ) , # [ doc = "39 - USART3 global interrupt" ] pub Usart3 : extern "C" fn ( Usart3 ) , # [ doc = "40 - EXTI Line[15:10] interrupts" ] pub Exti1510 : extern "C" fn ( Exti1510 ) , # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ] pub RtcAlarm : extern "C" fn ( RtcAlarm ) , # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ] pub OtgFsWkup : extern "C" fn ( OtgFsWkup ) , # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ] pub Tim8BrkTim12 : extern "C" fn ( Tim8BrkTim12 ) , # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ] pub Tim8UpTim13 : extern "C" fn ( Tim8UpTim13 ) , # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ] pub Tim8TrgComTim14 : extern "C" fn ( Tim8TrgComTim14 ) , # [ doc = "46 - TIM8 Capture Compare interrupt" ] pub Tim8Cc : extern "C" fn ( Tim8Cc ) , # [ doc = "47 - DMA1 Stream7 global interrupt" ] pub Dma1Stream7 : extern "C" fn ( Dma1Stream7 ) , # [ doc = "48 - FSMC global interrupt" ] pub Fsmc : extern "C" fn ( Fsmc ) , # [ doc = "49 - SDIO global interrupt" ] pub Sdio : extern "C" fn ( Sdio ) , # [ doc = "50 - TIM5 global interrupt" ] pub Tim5 : extern "C" fn ( Tim5 ) , # [ doc = "51 - SPI3 global interrupt" ] pub Spi3 : extern "C" fn ( Spi3 ) , # [ doc = "52 - UART4 global interrupt" ] pub Uart4 : extern "C" fn ( Uart4 ) , # [ doc = "53 - UART5 global interrupt" ] pub Uart5 : extern "C" fn ( Uart5 ) , # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ] pub Tim6Dac : extern "C" fn ( Tim6Dac ) , # [ doc = "55 - TIM7 global interrupt" ] pub Tim7 : extern "C" fn ( Tim7 ) , # [ doc = "56 - DMA2 Stream0 global interrupt" ] pub Dma2Stream0 : extern "C" fn ( Dma2Stream0 ) , # [ doc = "57 - DMA2 Stream1 global interrupt" ] pub Dma2Stream1 : extern "C" fn ( Dma2Stream1 ) , # [ doc = "58 - DMA2 Stream2 global interrupt" ] pub Dma2Stream2 : extern "C" fn ( Dma2Stream2 ) , # [ doc = "59 - DMA2 Stream3 global interrupt" ] pub Dma2Stream3 : extern "C" fn ( Dma2Stream3 ) , # [ doc = "60 - DMA2 Stream4 global interrupt" ] pub Dma2Stream4 : extern "C" fn ( Dma2Stream4 ) , # [ doc = "61 - Ethernet global interrupt" ] pub Eth : extern "C" fn ( Eth ) , # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ] pub EthWkup : extern "C" fn ( EthWkup ) , # [ doc = "63 - CAN2 TX interrupts" ] pub Can2Tx : extern "C" fn ( Can2Tx ) , # [ doc = "64 - CAN2 RX0 interrupts" ] pub Can2Rx0 : extern "C" fn ( Can2Rx0 ) , # [ doc = "65 - CAN2 RX1 interrupts" ] pub Can2Rx1 : extern "C" fn ( Can2Rx1 ) , # [ doc = "66 - CAN2 SCE interrupt" ] pub Can2Sce : extern "C" fn ( Can2Sce ) , # [ doc = "67 - USB On The Go FS global interrupt" ] pub OtgFs : extern "C" fn ( OtgFs ) , # [ doc = "68 - DMA2 Stream5 global interrupt" ] pub Dma2Stream5 : extern "C" fn ( Dma2Stream5 ) , # [ doc = "69 - DMA2 Stream6 global interrupt" ] pub Dma2Stream6 : extern "C" fn ( Dma2Stream6 ) , # [ doc = "70 - DMA2 Stream7 global interrupt" ] pub Dma2Stream7 : extern "C" fn ( Dma2Stream7 ) , # [ doc = "71 - USART6 global interrupt" ] pub Usart6 : extern "C" fn ( Usart6 ) , # [ doc = "72 - I2C3 event interrupt" ] pub I2c3Ev : extern "C" fn ( I2c3Ev ) , # [ doc = "73 - I2C3 error interrupt" ] pub I2c3Er : extern "C" fn ( I2c3Er ) , # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ] pub OtgHsEp1Out : extern "C" fn ( OtgHsEp1Out ) , # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ] pub OtgHsEp1In : extern "C" fn ( OtgHsEp1In ) , # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ] pub OtgHsWkup : extern "C" fn ( OtgHsWkup ) , # [ doc = "77 - USB On The Go HS global interrupt" ] pub OtgHs : extern "C" fn ( OtgHs ) , # [ doc = "78 - DCMI global interrupt" ] pub Dcmi : extern "C" fn ( Dcmi ) , # [ doc = r" Reserved spot in the vector table" ] pub _reserved1 : [ Reserved ; 2 ] , # [ doc = "81 - FPU interrupt" ] pub Fpu : extern "C" fn ( Fpu ) , } # [ doc = r" Default interrupt handlers" ] pub const DEFAULT_HANDLERS : Handlers = Handlers { Wwdg : exception :: default_handler , Pvd : exception :: default_handler , TampStamp : exception :: default_handler , RtcWkup : exception :: default_handler , _reserved0 : [ Reserved :: Vector ; 1 ] , Rcc : exception :: default_handler , Exti0 : exception :: default_handler , Exti1 : exception :: default_handler , Exti2 : exception :: default_handler , Exti3 : exception :: default_handler , Exti4 : exception :: default_handler , Dma1Stream0 : exception :: default_handler , Dma1Stream1 : exception :: default_handler , Dma1Stream2 : exception :: default_handler , Dma1Stream3 : exception :: default_handler , Dma1Stream4 : exception :: default_handler , Dma1Stream5 : exception :: default_handler , Dma1Stream6 : exception :: default_handler , Adc : exception :: default_handler , Can1Tx : exception :: default_handler , Can1Rx0 : exception :: default_handler , Can1Rx1 : exception :: default_handler , Can1Sce : exception :: default_handler , Exti95 : exception :: default_handler , Tim1BrkTim9 : exception :: default_handler , Tim1UpTim10 : exception :: default_handler , Tim1TrgComTim11 : exception :: default_handler , Tim1Cc : exception :: default_handler , Tim2 : exception :: default_handler , Tim3 : exception :: default_handler , Tim4 : exception :: default_handler , I2c1Ev : exception :: default_handler , I2c1Er : exception :: default_handler , I2c2Ev : exception :: default_handler , I2c2Er : exception :: default_handler , Spi1 : exception :: default_handler , Spi2 : exception :: default_handler , Usart1 : exception :: default_handler , Usart2 : exception :: default_handler , Usart3 : exception :: default_handler , Exti1510 : exception :: default_handler , RtcAlarm : exception :: default_handler , OtgFsWkup : exception :: default_handler , Tim8BrkTim12 : exception :: default_handler , Tim8UpTim13 : exception :: default_handler , Tim8TrgComTim14 : exception :: default_handler , Tim8Cc : exception :: default_handler , Dma1Stream7 : exception :: default_handler , Fsmc : exception :: default_handler , Sdio : exception :: default_handler , Tim5 : exception :: default_handler , Spi3 : exception :: default_handler , Uart4 : exception :: default_handler , Uart5 : exception :: default_handler , Tim6Dac : exception :: default_handler , Tim7 : exception :: default_handler , Dma2Stream0 : exception :: default_handler , Dma2Stream1 : exception :: default_handler , Dma2Stream2 : exception :: default_handler , Dma2Stream3 : exception :: default_handler , Dma2Stream4 : exception :: default_handler , Eth : exception :: default_handler , EthWkup : exception :: default_handler , Can2Tx : exception :: default_handler , Can2Rx0 : exception :: default_handler , Can2Rx1 : exception :: default_handler , Can2Sce : exception :: default_handler , OtgFs : exception :: default_handler , Dma2Stream5 : exception :: default_handler , Dma2Stream6 : exception :: default_handler , Dma2Stream7 : exception :: default_handler , Usart6 : exception :: default_handler , I2c3Ev : exception :: default_handler , I2c3Er : exception :: default_handler , OtgHsEp1Out : exception :: default_handler , OtgHsEp1In : exception :: default_handler , OtgHsWkup : exception :: default_handler , OtgHs : exception :: default_handler , Dcmi : exception :: default_handler , _reserved1 : [ Reserved :: Vector ; 2 ] , Fpu : exception :: default_handler , } ; # [ doc = r" Enumeration of all the interrupts" ] pub enum Interrupt { # [ doc = "0 - Window Watchdog interrupt" ] Wwdg , # [ doc = "1 - PVD through EXTI line detection interrupt" ] Pvd , # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ] TampStamp , # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ] RtcWkup , # [ doc = "5 - RCC global interrupt" ] Rcc , # [ doc = "6 - EXTI Line0 interrupt" ] Exti0 , # [ doc = "7 - EXTI Line1 interrupt" ] Exti1 , # [ doc = "8 - EXTI Line2 interrupt" ] Exti2 , # [ doc = "9 - EXTI Line3 interrupt" ] Exti3 , # [ doc = "10 - EXTI Line4 interrupt" ] Exti4 , # [ doc = "11 - DMA1 Stream0 global interrupt" ] Dma1Stream0 , # [ doc = "12 - DMA1 Stream1 global interrupt" ] Dma1Stream1 , # [ doc = "13 - DMA1 Stream2 global interrupt" ] Dma1Stream2 , # [ doc = "14 - DMA1 Stream3 global interrupt" ] Dma1Stream3 , # [ doc = "15 - DMA1 Stream4 global interrupt" ] Dma1Stream4 , # [ doc = "16 - DMA1 Stream5 global interrupt" ] Dma1Stream5 , # [ doc = "17 - DMA1 Stream6 global interrupt" ] Dma1Stream6 , # [ doc = "18 - ADC3 global interrupts" ] Adc , # [ doc = "19 - CAN1 TX interrupts" ] Can1Tx , # [ doc = "20 - CAN1 RX0 interrupts" ] Can1Rx0 , # [ doc = "21 - CAN1 RX1 interrupts" ] Can1Rx1 , # [ doc = "22 - CAN1 SCE interrupt" ] Can1Sce , # [ doc = "23 - EXTI Line[9:5] interrupts" ] Exti95 , # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ] Tim1BrkTim9 , # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ] Tim1UpTim10 , # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ] Tim1TrgComTim11 , # [ doc = "27 - TIM1 Capture Compare interrupt" ] Tim1Cc , # [ doc = "28 - TIM2 global interrupt" ] Tim2 , # [ doc = "29 - TIM3 global interrupt" ] Tim3 , # [ doc = "30 - TIM4 global interrupt" ] Tim4 , # [ doc = "31 - I2C1 event interrupt" ] I2c1Ev , # [ doc = "32 - I2C1 error interrupt" ] I2c1Er , # [ doc = "33 - I2C2 event interrupt" ] I2c2Ev , # [ doc = "34 - I2C2 error interrupt" ] I2c2Er , # [ doc = "35 - SPI1 global interrupt" ] Spi1 , # [ doc = "36 - SPI2 global interrupt" ] Spi2 , # [ doc = "37 - USART1 global interrupt" ] Usart1 , # [ doc = "38 - USART2 global interrupt" ] Usart2 , # [ doc = "39 - USART3 global interrupt" ] Usart3 , # [ doc = "40 - EXTI Line[15:10] interrupts" ] Exti1510 , # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ] RtcAlarm , # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ] OtgFsWkup , # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ] Tim8BrkTim12 , # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ] Tim8UpTim13 , # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ] Tim8TrgComTim14 , # [ doc = "46 - TIM8 Capture Compare interrupt" ] Tim8Cc , # [ doc = "47 - DMA1 Stream7 global interrupt" ] Dma1Stream7 , # [ doc = "48 - FSMC global interrupt" ] Fsmc , # [ doc = "49 - SDIO global interrupt" ] Sdio , # [ doc = "50 - TIM5 global interrupt" ] Tim5 , # [ doc = "51 - SPI3 global interrupt" ] Spi3 , # [ doc = "52 - UART4 global interrupt" ] Uart4 , # [ doc = "53 - UART5 global interrupt" ] Uart5 , # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ] Tim6Dac , # [ doc = "55 - TIM7 global interrupt" ] Tim7 , # [ doc = "56 - DMA2 Stream0 global interrupt" ] Dma2Stream0 , # [ doc = "57 - DMA2 Stream1 global interrupt" ] Dma2Stream1 , # [ doc = "58 - DMA2 Stream2 global interrupt" ] Dma2Stream2 , # [ doc = "59 - DMA2 Stream3 global interrupt" ] Dma2Stream3 , # [ doc = "60 - DMA2 Stream4 global interrupt" ] Dma2Stream4 , # [ doc = "61 - Ethernet global interrupt" ] Eth , # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ] EthWkup , # [ doc = "63 - CAN2 TX interrupts" ] Can2Tx , # [ doc = "64 - CAN2 RX0 interrupts" ] Can2Rx0 , # [ doc = "65 - CAN2 RX1 interrupts" ] Can2Rx1 , # [ doc = "66 - CAN2 SCE interrupt" ] Can2Sce , # [ doc = "67 - USB On The Go FS global interrupt" ] OtgFs , # [ doc = "68 - DMA2 Stream5 global interrupt" ] Dma2Stream5 , # [ doc = "69 - DMA2 Stream6 global interrupt" ] Dma2Stream6 , # [ doc = "70 - DMA2 Stream7 global interrupt" ] Dma2Stream7 , # [ doc = "71 - USART6 global interrupt" ] Usart6 , # [ doc = "72 - I2C3 event interrupt" ] I2c3Ev , # [ doc = "73 - I2C3 error interrupt" ] I2c3Er , # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ] OtgHsEp1Out , # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ] OtgHsEp1In , # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ] OtgHsWkup , # [ doc = "77 - USB On The Go HS global interrupt" ] OtgHs , # [ doc = "78 - DCMI global interrupt" ] Dcmi , # [ doc = "81 - FPU interrupt" ] Fpu , } unsafe impl Nr for Interrupt { # [ inline ( always ) ] fn nr ( & self ) -> u8 { match * self { Interrupt :: Wwdg => 0 , Interrupt :: Pvd => 1 , Interrupt :: TampStamp => 2 , Interrupt :: RtcWkup => 3 , Interrupt :: Rcc => 5 , Interrupt :: Exti0 => 6 , Interrupt :: Exti1 => 7 , Interrupt :: Exti2 => 8 , Interrupt :: Exti3 => 9 , Interrupt :: Exti4 => 10 , Interrupt :: Dma1Stream0 => 11 , Interrupt :: Dma1Stream1 => 12 , Interrupt :: Dma1Stream2 => 13 , Interrupt :: Dma1Stream3 => 14 , Interrupt :: Dma1Stream4 => 15 , Interrupt :: Dma1Stream5 => 16 , Interrupt :: Dma1Stream6 => 17 , Interrupt :: Adc => 18 , Interrupt :: Can1Tx => 19 , Interrupt :: Can1Rx0 => 20 , Interrupt :: Can1Rx1 => 21 , Interrupt :: Can1Sce => 22 , Interrupt :: Exti95 => 23 , Interrupt :: Tim1BrkTim9 => 24 , Interrupt :: Tim1UpTim10 => 25 , Interrupt :: Tim1TrgComTim11 => 26 , Interrupt :: Tim1Cc => 27 , Interrupt :: Tim2 => 28 , Interrupt :: Tim3 => 29 , Interrupt :: Tim4 => 30 , Interrupt :: I2c1Ev => 31 , Interrupt :: I2c1Er => 32 , Interrupt :: I2c2Ev => 33 , Interrupt :: I2c2Er => 34 , Interrupt :: Spi1 => 35 , Interrupt :: Spi2 => 36 , Interrupt :: Usart1 => 37 , Interrupt :: Usart2 => 38 , Interrupt :: Usart3 => 39 , Interrupt :: Exti1510 => 40 , Interrupt :: RtcAlarm => 41 , Interrupt :: OtgFsWkup => 42 , Interrupt :: Tim8BrkTim12 => 43 , Interrupt :: Tim8UpTim13 => 44 , Interrupt :: Tim8TrgComTim14 => 45 , Interrupt :: Tim8Cc => 46 , Interrupt :: Dma1Stream7 => 47 , Interrupt :: Fsmc => 48 , Interrupt :: Sdio => 49 , Interrupt :: Tim5 => 50 , Interrupt :: Spi3 => 51 , Interrupt :: Uart4 => 52 , Interrupt :: Uart5 => 53 , Interrupt :: Tim6Dac => 54 , Interrupt :: Tim7 => 55 , Interrupt :: Dma2Stream0 => 56 , Interrupt :: Dma2Stream1 => 57 , Interrupt :: Dma2Stream2 => 58 , Interrupt :: Dma2Stream3 => 59 , Interrupt :: Dma2Stream4 => 60 , Interrupt :: Eth => 61 , Interrupt :: EthWkup => 62 , Interrupt :: Can2Tx => 63 , Interrupt :: Can2Rx0 => 64 , Interrupt :: Can2Rx1 => 65 , Interrupt :: Can2Sce => 66 , Interrupt :: OtgFs => 67 , Interrupt :: Dma2Stream5 => 68 , Interrupt :: Dma2Stream6 => 69 , Interrupt :: Dma2Stream7 => 70 , Interrupt :: Usart6 => 71 , Interrupt :: I2c3Ev => 72 , Interrupt :: I2c3Er => 73 , Interrupt :: OtgHsEp1Out => 74 , Interrupt :: OtgHsEp1In => 75 , Interrupt :: OtgHsWkup => 76 , Interrupt :: OtgHs => 77 , Interrupt :: Dcmi => 78 , Interrupt :: Fpu => 81 , } } } } # [ doc = "Random number generator" ] pub const RNG : Peripheral < Rng > = unsafe { Peripheral :: new ( 1342572544 ) } ; # [ doc = "Random number generator" ] pub mod rng { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register" ] pub cr : Cr , # [ doc = "0x04 - status register" ] pub sr : Sr , # [ doc = "0x08 - data register" ] pub dr : Dr , } # [ doc = "control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IeR { bits : u8 , } impl IeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RngenR { bits : u8 , } impl RngenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IeW < 'a > { w : & 'a mut W , } impl < 'a > _IeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RngenW < 'a > { w : & 'a mut W , } impl < 'a > _RngenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 3 - Interrupt enable" ] # [ inline ( always ) ] pub fn ie ( & self ) -> IeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IeR { bits } } # [ doc = "Bit 2 - Random number generator enable" ] # [ inline ( always ) ] pub fn rngen ( & self ) -> RngenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RngenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 3 - Interrupt enable" ] # [ inline ( always ) ] pub fn ie ( & mut self ) -> _IeW { _IeW { w : self } } # [ doc = "Bit 2 - Random number generator enable" ] # [ inline ( always ) ] pub fn rngen ( & mut self ) -> _RngenW { _RngenW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SeisR { bits : u8 , } impl SeisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CeisR { bits : u8 , } impl CeisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SecsR { bits : u8 , } impl SecsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CecsR { bits : u8 , } impl CecsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DrdyR { bits : u8 , } impl DrdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SeisW < 'a > { w : & 'a mut W , } impl < 'a > _SeisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CeisW < 'a > { w : & 'a mut W , } impl < 'a > _CeisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - Seed error interrupt status" ] # [ inline ( always ) ] pub fn seis ( & self ) -> SeisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SeisR { bits } } # [ doc = "Bit 5 - Clock error interrupt status" ] # [ inline ( always ) ] pub fn ceis ( & self ) -> CeisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CeisR { bits } } # [ doc = "Bit 2 - Seed error current status" ] # [ inline ( always ) ] pub fn secs ( & self ) -> SecsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SecsR { bits } } # [ doc = "Bit 1 - Clock error current status" ] # [ inline ( always ) ] pub fn cecs ( & self ) -> CecsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CecsR { bits } } # [ doc = "Bit 0 - Data ready" ] # [ inline ( always ) ] pub fn drdy ( & self ) -> DrdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DrdyR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Seed error interrupt status" ] # [ inline ( always ) ] pub fn seis ( & mut self ) -> _SeisW { _SeisW { w : self } } # [ doc = "Bit 5 - Clock error interrupt status" ] # [ inline ( always ) ] pub fn ceis ( & mut self ) -> _CeisW { _CeisW { w : self } } } } # [ doc = "data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RndataR { bits : u32 , } impl RndataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Random data" ] # [ inline ( always ) ] pub fn rndata ( & self ) -> RndataR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; RndataR { bits } } } } } # [ doc = "Random number generator" ] pub struct Rng { register_block : rng :: RegisterBlock } impl Deref for Rng { type Target = rng :: RegisterBlock ; fn deref ( & self ) -> & rng :: RegisterBlock { & self . register_block } } # [ doc = "Digital camera interface" ] pub const DCMI : Peripheral < Dcmi > = unsafe { Peripheral :: new ( 1342504960 ) } ; # [ doc = "Digital camera interface" ] pub mod dcmi { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr : Cr , # [ doc = "0x04 - status register" ] pub sr : Sr , # [ doc = "0x08 - raw interrupt status register" ] pub ris : Ris , # [ doc = "0x0c - interrupt enable register" ] pub ier : Ier , # [ doc = "0x10 - masked interrupt status register" ] pub mis : Mis , # [ doc = "0x14 - interrupt clear register" ] pub icr : Icr , # [ doc = "0x18 - embedded synchronization code register" ] pub escr : Escr , # [ doc = "0x1c - embedded synchronization unmask register" ] pub esur : Esur , # [ doc = "0x20 - crop window start" ] pub cwstrt : Cwstrt , # [ doc = "0x24 - crop window size" ] pub cwsize : Cwsize , # [ doc = "0x28 - data register" ] pub dr : Dr , } # [ doc = "control register 1" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EnableR { bits : u8 , } impl EnableR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EdmR { bits : u8 , } impl EdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FcrcR { bits : u8 , } impl FcrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VspolR { bits : u8 , } impl VspolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HspolR { bits : u8 , } impl HspolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PckpolR { bits : u8 , } impl PckpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EssR { bits : u8 , } impl EssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JpegR { bits : u8 , } impl JpegR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CropR { bits : u8 , } impl CropR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmR { bits : u8 , } impl CmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CaptureR { bits : u8 , } impl CaptureR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EnableW < 'a > { w : & 'a mut W , } impl < 'a > _EnableW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EdmW < 'a > { w : & 'a mut W , } impl < 'a > _EdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FcrcW < 'a > { w : & 'a mut W , } impl < 'a > _FcrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VspolW < 'a > { w : & 'a mut W , } impl < 'a > _VspolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HspolW < 'a > { w : & 'a mut W , } impl < 'a > _HspolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PckpolW < 'a > { w : & 'a mut W , } impl < 'a > _PckpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EssW < 'a > { w : & 'a mut W , } impl < 'a > _EssW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JpegW < 'a > { w : & 'a mut W , } impl < 'a > _JpegW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CropW < 'a > { w : & 'a mut W , } impl < 'a > _CropW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmW < 'a > { w : & 'a mut W , } impl < 'a > _CmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CaptureW < 'a > { w : & 'a mut W , } impl < 'a > _CaptureW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - DCMI enable" ] # [ inline ( always ) ] pub fn enable ( & self ) -> EnableR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnableR { bits } } # [ doc = "Bits 10:11 - Extended data mode" ] # [ inline ( always ) ] pub fn edm ( & self ) -> EdmR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EdmR { bits } } # [ doc = "Bits 8:9 - Frame capture rate control" ] # [ inline ( always ) ] pub fn fcrc ( & self ) -> FcrcR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FcrcR { bits } } # [ doc = "Bit 7 - Vertical synchronization polarity" ] # [ inline ( always ) ] pub fn vspol ( & self ) -> VspolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VspolR { bits } } # [ doc = "Bit 6 - Horizontal synchronization polarity" ] # [ inline ( always ) ] pub fn hspol ( & self ) -> HspolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HspolR { bits } } # [ doc = "Bit 5 - Pixel clock polarity" ] # [ inline ( always ) ] pub fn pckpol ( & self ) -> PckpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PckpolR { bits } } # [ doc = "Bit 4 - Embedded synchronization select" ] # [ inline ( always ) ] pub fn ess ( & self ) -> EssR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EssR { bits } } # [ doc = "Bit 3 - JPEG format" ] # [ inline ( always ) ] pub fn jpeg ( & self ) -> JpegR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JpegR { bits } } # [ doc = "Bit 2 - Crop feature" ] # [ inline ( always ) ] pub fn crop ( & self ) -> CropR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CropR { bits } } # [ doc = "Bit 1 - Capture mode" ] # [ inline ( always ) ] pub fn cm ( & self ) -> CmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmR { bits } } # [ doc = "Bit 0 - Capture enable" ] # [ inline ( always ) ] pub fn capture ( & self ) -> CaptureR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CaptureR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - DCMI enable" ] # [ inline ( always ) ] pub fn enable ( & mut self ) -> _EnableW { _EnableW { w : self } } # [ doc = "Bits 10:11 - Extended data mode" ] # [ inline ( always ) ] pub fn edm ( & mut self ) -> _EdmW { _EdmW { w : self } } # [ doc = "Bits 8:9 - Frame capture rate control" ] # [ inline ( always ) ] pub fn fcrc ( & mut self ) -> _FcrcW { _FcrcW { w : self } } # [ doc = "Bit 7 - Vertical synchronization polarity" ] # [ inline ( always ) ] pub fn vspol ( & mut self ) -> _VspolW { _VspolW { w : self } } # [ doc = "Bit 6 - Horizontal synchronization polarity" ] # [ inline ( always ) ] pub fn hspol ( & mut self ) -> _HspolW { _HspolW { w : self } } # [ doc = "Bit 5 - Pixel clock polarity" ] # [ inline ( always ) ] pub fn pckpol ( & mut self ) -> _PckpolW { _PckpolW { w : self } } # [ doc = "Bit 4 - Embedded synchronization select" ] # [ inline ( always ) ] pub fn ess ( & mut self ) -> _EssW { _EssW { w : self } } # [ doc = "Bit 3 - JPEG format" ] # [ inline ( always ) ] pub fn jpeg ( & mut self ) -> _JpegW { _JpegW { w : self } } # [ doc = "Bit 2 - Crop feature" ] # [ inline ( always ) ] pub fn crop ( & mut self ) -> _CropW { _CropW { w : self } } # [ doc = "Bit 1 - Capture mode" ] # [ inline ( always ) ] pub fn cm ( & mut self ) -> _CmW { _CmW { w : self } } # [ doc = "Bit 0 - Capture enable" ] # [ inline ( always ) ] pub fn capture ( & mut self ) -> _CaptureW { _CaptureW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Sr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct FneR { bits : u8 , } impl FneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VsyncR { bits : u8 , } impl VsyncR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsyncR { bits : u8 , } impl HsyncR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 2 - FIFO not empty" ] # [ inline ( always ) ] pub fn fne ( & self ) -> FneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FneR { bits } } # [ doc = "Bit 1 - VSYNC" ] # [ inline ( always ) ] pub fn vsync ( & self ) -> VsyncR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VsyncR { bits } } # [ doc = "Bit 0 - HSYNC" ] # [ inline ( always ) ] pub fn hsync ( & self ) -> HsyncR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsyncR { bits } } } } # [ doc = "raw interrupt status register" ] pub struct Ris { register : VolatileCell < u32 > } # [ doc = "raw interrupt status register" ] pub mod ris { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ris { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct LineRisR { bits : u8 , } impl LineRisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VsyncRisR { bits : u8 , } impl VsyncRisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrRisR { bits : u8 , } impl ErrRisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OvrRisR { bits : u8 , } impl OvrRisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrameRisR { bits : u8 , } impl FrameRisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 4 - Line raw interrupt status" ] # [ inline ( always ) ] pub fn line_ris ( & self ) -> LineRisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LineRisR { bits } } # [ doc = "Bit 3 - VSYNC raw interrupt status" ] # [ inline ( always ) ] pub fn vsync_ris ( & self ) -> VsyncRisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VsyncRisR { bits } } # [ doc = "Bit 2 - Synchronization error raw interrupt status" ] # [ inline ( always ) ] pub fn err_ris ( & self ) -> ErrRisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrRisR { bits } } # [ doc = "Bit 1 - Overrun raw interrupt status" ] # [ inline ( always ) ] pub fn ovr_ris ( & self ) -> OvrRisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrRisR { bits } } # [ doc = "Bit 0 - Capture complete raw interrupt status" ] # [ inline ( always ) ] pub fn frame_ris ( & self ) -> FrameRisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrameRisR { bits } } } } # [ doc = "interrupt enable register" ] pub struct Ier { register : VolatileCell < u32 > } # [ doc = "interrupt enable register" ] pub mod ier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LineIeR { bits : u8 , } impl LineIeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VsyncIeR { bits : u8 , } impl VsyncIeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrIeR { bits : u8 , } impl ErrIeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OvrIeR { bits : u8 , } impl OvrIeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrameIeR { bits : u8 , } impl FrameIeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LineIeW < 'a > { w : & 'a mut W , } impl < 'a > _LineIeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VsyncIeW < 'a > { w : & 'a mut W , } impl < 'a > _VsyncIeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErrIeW < 'a > { w : & 'a mut W , } impl < 'a > _ErrIeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OvrIeW < 'a > { w : & 'a mut W , } impl < 'a > _OvrIeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrameIeW < 'a > { w : & 'a mut W , } impl < 'a > _FrameIeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 4 - Line interrupt enable" ] # [ inline ( always ) ] pub fn line_ie ( & self ) -> LineIeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LineIeR { bits } } # [ doc = "Bit 3 - VSYNC interrupt enable" ] # [ inline ( always ) ] pub fn vsync_ie ( & self ) -> VsyncIeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VsyncIeR { bits } } # [ doc = "Bit 2 - Synchronization error interrupt enable" ] # [ inline ( always ) ] pub fn err_ie ( & self ) -> ErrIeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrIeR { bits } } # [ doc = "Bit 1 - Overrun interrupt enable" ] # [ inline ( always ) ] pub fn ovr_ie ( & self ) -> OvrIeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrIeR { bits } } # [ doc = "Bit 0 - Capture complete interrupt enable" ] # [ inline ( always ) ] pub fn frame_ie ( & self ) -> FrameIeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrameIeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 4 - Line interrupt enable" ] # [ inline ( always ) ] pub fn line_ie ( & mut self ) -> _LineIeW { _LineIeW { w : self } } # [ doc = "Bit 3 - VSYNC interrupt enable" ] # [ inline ( always ) ] pub fn vsync_ie ( & mut self ) -> _VsyncIeW { _VsyncIeW { w : self } } # [ doc = "Bit 2 - Synchronization error interrupt enable" ] # [ inline ( always ) ] pub fn err_ie ( & mut self ) -> _ErrIeW { _ErrIeW { w : self } } # [ doc = "Bit 1 - Overrun interrupt enable" ] # [ inline ( always ) ] pub fn ovr_ie ( & mut self ) -> _OvrIeW { _OvrIeW { w : self } } # [ doc = "Bit 0 - Capture complete interrupt enable" ] # [ inline ( always ) ] pub fn frame_ie ( & mut self ) -> _FrameIeW { _FrameIeW { w : self } } } } # [ doc = "masked interrupt status register" ] pub struct Mis { register : VolatileCell < u32 > } # [ doc = "masked interrupt status register" ] pub mod mis { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mis { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct LineMisR { bits : u8 , } impl LineMisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VsyncMisR { bits : u8 , } impl VsyncMisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrMisR { bits : u8 , } impl ErrMisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OvrMisR { bits : u8 , } impl OvrMisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrameMisR { bits : u8 , } impl FrameMisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 4 - Line masked interrupt status" ] # [ inline ( always ) ] pub fn line_mis ( & self ) -> LineMisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LineMisR { bits } } # [ doc = "Bit 3 - VSYNC masked interrupt status" ] # [ inline ( always ) ] pub fn vsync_mis ( & self ) -> VsyncMisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VsyncMisR { bits } } # [ doc = "Bit 2 - Synchronization error masked interrupt status" ] # [ inline ( always ) ] pub fn err_mis ( & self ) -> ErrMisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrMisR { bits } } # [ doc = "Bit 1 - Overrun masked interrupt status" ] # [ inline ( always ) ] pub fn ovr_mis ( & self ) -> OvrMisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrMisR { bits } } # [ doc = "Bit 0 - Capture complete masked interrupt status" ] # [ inline ( always ) ] pub fn frame_mis ( & self ) -> FrameMisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrameMisR { bits } } } } # [ doc = "interrupt clear register" ] pub struct Icr { register : VolatileCell < u32 > } # [ doc = "interrupt clear register" ] pub mod icr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _LineIscW < 'a > { w : & 'a mut W , } impl < 'a > _LineIscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VsyncIscW < 'a > { w : & 'a mut W , } impl < 'a > _VsyncIscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErrIscW < 'a > { w : & 'a mut W , } impl < 'a > _ErrIscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OvrIscW < 'a > { w : & 'a mut W , } impl < 'a > _OvrIscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrameIscW < 'a > { w : & 'a mut W , } impl < 'a > _FrameIscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 4 - line interrupt status clear" ] # [ inline ( always ) ] pub fn line_isc ( & mut self ) -> _LineIscW { _LineIscW { w : self } } # [ doc = "Bit 3 - Vertical synch interrupt status clear" ] # [ inline ( always ) ] pub fn vsync_isc ( & mut self ) -> _VsyncIscW { _VsyncIscW { w : self } } # [ doc = "Bit 2 - Synchronization error interrupt status clear" ] # [ inline ( always ) ] pub fn err_isc ( & mut self ) -> _ErrIscW { _ErrIscW { w : self } } # [ doc = "Bit 1 - Overrun interrupt status clear" ] # [ inline ( always ) ] pub fn ovr_isc ( & mut self ) -> _OvrIscW { _OvrIscW { w : self } } # [ doc = "Bit 0 - Capture complete interrupt status clear" ] # [ inline ( always ) ] pub fn frame_isc ( & mut self ) -> _FrameIscW { _FrameIscW { w : self } } } } # [ doc = "embedded synchronization code register" ] pub struct Escr { register : VolatileCell < u32 > } # [ doc = "embedded synchronization code register" ] pub mod escr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Escr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FecR { bits : u8 , } impl FecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LecR { bits : u8 , } impl LecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LscR { bits : u8 , } impl LscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FscR { bits : u8 , } impl FscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FecW < 'a > { w : & 'a mut W , } impl < 'a > _FecW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LecW < 'a > { w : & 'a mut W , } impl < 'a > _LecW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LscW < 'a > { w : & 'a mut W , } impl < 'a > _LscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FscW < 'a > { w : & 'a mut W , } impl < 'a > _FscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - Frame end delimiter code" ] # [ inline ( always ) ] pub fn fec ( & self ) -> FecR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FecR { bits } } # [ doc = "Bits 16:23 - Line end delimiter code" ] # [ inline ( always ) ] pub fn lec ( & self ) -> LecR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LecR { bits } } # [ doc = "Bits 8:15 - Line start delimiter code" ] # [ inline ( always ) ] pub fn lsc ( & self ) -> LscR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LscR { bits } } # [ doc = "Bits 0:7 - Frame start delimiter code" ] # [ inline ( always ) ] pub fn fsc ( & self ) -> FscR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - Frame end delimiter code" ] # [ inline ( always ) ] pub fn fec ( & mut self ) -> _FecW { _FecW { w : self } } # [ doc = "Bits 16:23 - Line end delimiter code" ] # [ inline ( always ) ] pub fn lec ( & mut self ) -> _LecW { _LecW { w : self } } # [ doc = "Bits 8:15 - Line start delimiter code" ] # [ inline ( always ) ] pub fn lsc ( & mut self ) -> _LscW { _LscW { w : self } } # [ doc = "Bits 0:7 - Frame start delimiter code" ] # [ inline ( always ) ] pub fn fsc ( & mut self ) -> _FscW { _FscW { w : self } } } } # [ doc = "embedded synchronization unmask register" ] pub struct Esur { register : VolatileCell < u32 > } # [ doc = "embedded synchronization unmask register" ] pub mod esur { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Esur { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeuR { bits : u8 , } impl FeuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LeuR { bits : u8 , } impl LeuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsuR { bits : u8 , } impl LsuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsuR { bits : u8 , } impl FsuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeuW < 'a > { w : & 'a mut W , } impl < 'a > _FeuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LeuW < 'a > { w : & 'a mut W , } impl < 'a > _LeuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsuW < 'a > { w : & 'a mut W , } impl < 'a > _LsuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FsuW < 'a > { w : & 'a mut W , } impl < 'a > _FsuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - Frame end delimiter unmask" ] # [ inline ( always ) ] pub fn feu ( & self ) -> FeuR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeuR { bits } } # [ doc = "Bits 16:23 - Line end delimiter unmask" ] # [ inline ( always ) ] pub fn leu ( & self ) -> LeuR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LeuR { bits } } # [ doc = "Bits 8:15 - Line start delimiter unmask" ] # [ inline ( always ) ] pub fn lsu ( & self ) -> LsuR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsuR { bits } } # [ doc = "Bits 0:7 - Frame start delimiter unmask" ] # [ inline ( always ) ] pub fn fsu ( & self ) -> FsuR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsuR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - Frame end delimiter unmask" ] # [ inline ( always ) ] pub fn feu ( & mut self ) -> _FeuW { _FeuW { w : self } } # [ doc = "Bits 16:23 - Line end delimiter unmask" ] # [ inline ( always ) ] pub fn leu ( & mut self ) -> _LeuW { _LeuW { w : self } } # [ doc = "Bits 8:15 - Line start delimiter unmask" ] # [ inline ( always ) ] pub fn lsu ( & mut self ) -> _LsuW { _LsuW { w : self } } # [ doc = "Bits 0:7 - Frame start delimiter unmask" ] # [ inline ( always ) ] pub fn fsu ( & mut self ) -> _FsuW { _FsuW { w : self } } } } # [ doc = "crop window start" ] pub struct Cwstrt { register : VolatileCell < u32 > } # [ doc = "crop window start" ] pub mod cwstrt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cwstrt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct VstR { bits : u16 , } impl VstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct HoffcntR { bits : u16 , } impl HoffcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _VstW < 'a > { w : & 'a mut W , } impl < 'a > _VstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 8191 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HoffcntW < 'a > { w : & 'a mut W , } impl < 'a > _HoffcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 16383 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:28 - Vertical start line count" ] # [ inline ( always ) ] pub fn vst ( & self ) -> VstR { let bits = { const MASK : u16 = 8191 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; VstR { bits } } # [ doc = "Bits 0:13 - Horizontal offset count" ] # [ inline ( always ) ] pub fn hoffcnt ( & self ) -> HoffcntR { let bits = { const MASK : u16 = 16383 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HoffcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:28 - Vertical start line count" ] # [ inline ( always ) ] pub fn vst ( & mut self ) -> _VstW { _VstW { w : self } } # [ doc = "Bits 0:13 - Horizontal offset count" ] # [ inline ( always ) ] pub fn hoffcnt ( & mut self ) -> _HoffcntW { _HoffcntW { w : self } } } } # [ doc = "crop window size" ] pub struct Cwsize { register : VolatileCell < u32 > } # [ doc = "crop window size" ] pub mod cwsize { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cwsize { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct VlineR { bits : u16 , } impl VlineR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct CapcntR { bits : u16 , } impl CapcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _VlineW < 'a > { w : & 'a mut W , } impl < 'a > _VlineW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 16383 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CapcntW < 'a > { w : & 'a mut W , } impl < 'a > _CapcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 16383 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:29 - Vertical line count" ] # [ inline ( always ) ] pub fn vline ( & self ) -> VlineR { let bits = { const MASK : u16 = 16383 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; VlineR { bits } } # [ doc = "Bits 0:13 - Capture count" ] # [ inline ( always ) ] pub fn capcnt ( & self ) -> CapcntR { let bits = { const MASK : u16 = 16383 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CapcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:29 - Vertical line count" ] # [ inline ( always ) ] pub fn vline ( & mut self ) -> _VlineW { _VlineW { w : self } } # [ doc = "Bits 0:13 - Capture count" ] # [ inline ( always ) ] pub fn capcnt ( & mut self ) -> _CapcntW { _CapcntW { w : self } } } } # [ doc = "data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Byte3R { bits : u8 , } impl Byte3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Byte2R { bits : u8 , } impl Byte2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Byte1R { bits : u8 , } impl Byte1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Byte0R { bits : u8 , } impl Byte0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - Data byte 3" ] # [ inline ( always ) ] pub fn byte3 ( & self ) -> Byte3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Byte3R { bits } } # [ doc = "Bits 16:23 - Data byte 2" ] # [ inline ( always ) ] pub fn byte2 ( & self ) -> Byte2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Byte2R { bits } } # [ doc = "Bits 8:15 - Data byte 1" ] # [ inline ( always ) ] pub fn byte1 ( & self ) -> Byte1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Byte1R { bits } } # [ doc = "Bits 0:7 - Data byte 0" ] # [ inline ( always ) ] pub fn byte0 ( & self ) -> Byte0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Byte0R { bits } } } } } # [ doc = "Digital camera interface" ] pub struct Dcmi { register_block : dcmi :: RegisterBlock } impl Deref for Dcmi { type Target = dcmi :: RegisterBlock ; fn deref ( & self ) -> & dcmi :: RegisterBlock { & self . register_block } } # [ doc = "Flexible static memory controller" ] pub const FSMC : Peripheral < Fsmc > = unsafe { Peripheral :: new ( 2684354560 ) } ; # [ doc = "Flexible static memory controller" ] pub mod fsmc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - SRAM/NOR-Flash chip-select control register 1" ] pub bcr1 : Bcr1 , # [ doc = "0x04 - SRAM/NOR-Flash chip-select timing register 1" ] pub btr1 : Btr1 , # [ doc = "0x08 - SRAM/NOR-Flash chip-select control register 2" ] pub bcr2 : Bcr2 , # [ doc = "0x0c - SRAM/NOR-Flash chip-select timing register 2" ] pub btr2 : Btr2 , # [ doc = "0x10 - SRAM/NOR-Flash chip-select control register 3" ] pub bcr3 : Bcr3 , # [ doc = "0x14 - SRAM/NOR-Flash chip-select timing register 3" ] pub btr3 : Btr3 , # [ doc = "0x18 - SRAM/NOR-Flash chip-select control register 4" ] pub bcr4 : Bcr4 , # [ doc = "0x1c - SRAM/NOR-Flash chip-select timing register 4" ] pub btr4 : Btr4 , _reserved0 : [ u8 ; 64usize ] , # [ doc = "0x60 - PC Card/NAND Flash control register 2" ] pub pcr2 : Pcr2 , # [ doc = "0x64 - FIFO status and interrupt register 2" ] pub sr2 : Sr2 , # [ doc = "0x68 - Common memory space timing register 2" ] pub pmem2 : Pmem2 , # [ doc = "0x6c - Attribute memory space timing register 2" ] pub patt2 : Patt2 , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x74 - ECC result register 2" ] pub eccr2 : Eccr2 , _reserved2 : [ u8 ; 8usize ] , # [ doc = "0x80 - PC Card/NAND Flash control register 3" ] pub pcr3 : Pcr3 , # [ doc = "0x84 - FIFO status and interrupt register 3" ] pub sr3 : Sr3 , # [ doc = "0x88 - Common memory space timing register 3" ] pub pmem3 : Pmem3 , # [ doc = "0x8c - Attribute memory space timing register 3" ] pub patt3 : Patt3 , _reserved3 : [ u8 ; 4usize ] , # [ doc = "0x94 - ECC result register 3" ] pub eccr3 : Eccr3 , _reserved4 : [ u8 ; 8usize ] , # [ doc = "0xa0 - PC Card/NAND Flash control register 4" ] pub pcr4 : Pcr4 , # [ doc = "0xa4 - FIFO status and interrupt register 4" ] pub sr4 : Sr4 , # [ doc = "0xa8 - Common memory space timing register 4" ] pub pmem4 : Pmem4 , # [ doc = "0xac - Attribute memory space timing register 4" ] pub patt4 : Patt4 , # [ doc = "0xb0 - I/O space timing register 4" ] pub pio4 : Pio4 , _reserved5 : [ u8 ; 80usize ] , # [ doc = "0x104 - SRAM/NOR-Flash write timing registers 1" ] pub bwtr1 : Bwtr1 , _reserved6 : [ u8 ; 4usize ] , # [ doc = "0x10c - SRAM/NOR-Flash write timing registers 2" ] pub bwtr2 : Bwtr2 , _reserved7 : [ u8 ; 4usize ] , # [ doc = "0x114 - SRAM/NOR-Flash write timing registers 3" ] pub bwtr3 : Bwtr3 , _reserved8 : [ u8 ; 4usize ] , # [ doc = "0x11c - SRAM/NOR-Flash write timing registers 4" ] pub bwtr4 : Bwtr4 , } # [ doc = "SRAM/NOR-Flash chip-select control register 1" ] pub struct Bcr1 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select control register 1" ] pub mod bcr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bcr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CburstrwR { bits : u8 , } impl CburstrwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsyncwaitR { bits : u8 , } impl AsyncwaitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtmodR { bits : u8 , } impl ExtmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitenR { bits : u8 , } impl WaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrenR { bits : u8 , } impl WrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitcfgR { bits : u8 , } impl WaitcfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitpolR { bits : u8 , } impl WaitpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BurstenR { bits : u8 , } impl BurstenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FaccenR { bits : u8 , } impl FaccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MwidR { bits : u8 , } impl MwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtypR { bits : u8 , } impl MtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuxenR { bits : u8 , } impl MuxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbkenR { bits : u8 , } impl MbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CburstrwW < 'a > { w : & 'a mut W , } impl < 'a > _CburstrwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AsyncwaitW < 'a > { w : & 'a mut W , } impl < 'a > _AsyncwaitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtmodW < 'a > { w : & 'a mut W , } impl < 'a > _ExtmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitenW < 'a > { w : & 'a mut W , } impl < 'a > _WaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrenW < 'a > { w : & 'a mut W , } impl < 'a > _WrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitcfgW < 'a > { w : & 'a mut W , } impl < 'a > _WaitcfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitpolW < 'a > { w : & 'a mut W , } impl < 'a > _WaitpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BurstenW < 'a > { w : & 'a mut W , } impl < 'a > _BurstenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FaccenW < 'a > { w : & 'a mut W , } impl < 'a > _FaccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MwidW < 'a > { w : & 'a mut W , } impl < 'a > _MwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MtypW < 'a > { w : & 'a mut W , } impl < 'a > _MtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MuxenW < 'a > { w : & 'a mut W , } impl < 'a > _MuxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbkenW < 'a > { w : & 'a mut W , } impl < 'a > _MbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & self ) -> CburstrwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CburstrwR { bits } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & self ) -> AsyncwaitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsyncwaitR { bits } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & self ) -> ExtmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtmodR { bits } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & self ) -> WaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitenR { bits } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & self ) -> WrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrenR { bits } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & self ) -> WaitcfgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitcfgR { bits } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & self ) -> WaitpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitpolR { bits } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & self ) -> BurstenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BurstenR { bits } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & self ) -> FaccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FaccenR { bits } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & self ) -> MwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MwidR { bits } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & self ) -> MtypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtypR { bits } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & self ) -> MuxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuxenR { bits } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & self ) -> MbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbkenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12496 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & mut self ) -> _CburstrwW { _CburstrwW { w : self } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & mut self ) -> _AsyncwaitW { _AsyncwaitW { w : self } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & mut self ) -> _ExtmodW { _ExtmodW { w : self } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & mut self ) -> _WaitenW { _WaitenW { w : self } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & mut self ) -> _WrenW { _WrenW { w : self } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & mut self ) -> _WaitcfgW { _WaitcfgW { w : self } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & mut self ) -> _WaitpolW { _WaitpolW { w : self } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & mut self ) -> _BurstenW { _BurstenW { w : self } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & mut self ) -> _FaccenW { _FaccenW { w : self } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & mut self ) -> _MwidW { _MwidW { w : self } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & mut self ) -> _MtypW { _MtypW { w : self } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & mut self ) -> _MuxenW { _MuxenW { w : self } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & mut self ) -> _MbkenW { _MbkenW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select timing register 1" ] pub struct Btr1 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select timing register 1" ] pub mod btr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Btr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BusturnR { bits : u8 , } impl BusturnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BusturnW < 'a > { w : & 'a mut W , } impl < 'a > _BusturnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & self ) -> BusturnR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BusturnR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & mut self ) -> _BusturnW { _BusturnW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select control register 2" ] pub struct Bcr2 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select control register 2" ] pub mod bcr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bcr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CburstrwR { bits : u8 , } impl CburstrwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsyncwaitR { bits : u8 , } impl AsyncwaitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtmodR { bits : u8 , } impl ExtmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitenR { bits : u8 , } impl WaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrenR { bits : u8 , } impl WrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitcfgR { bits : u8 , } impl WaitcfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrapmodR { bits : u8 , } impl WrapmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitpolR { bits : u8 , } impl WaitpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BurstenR { bits : u8 , } impl BurstenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FaccenR { bits : u8 , } impl FaccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MwidR { bits : u8 , } impl MwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtypR { bits : u8 , } impl MtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuxenR { bits : u8 , } impl MuxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbkenR { bits : u8 , } impl MbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CburstrwW < 'a > { w : & 'a mut W , } impl < 'a > _CburstrwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AsyncwaitW < 'a > { w : & 'a mut W , } impl < 'a > _AsyncwaitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtmodW < 'a > { w : & 'a mut W , } impl < 'a > _ExtmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitenW < 'a > { w : & 'a mut W , } impl < 'a > _WaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrenW < 'a > { w : & 'a mut W , } impl < 'a > _WrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitcfgW < 'a > { w : & 'a mut W , } impl < 'a > _WaitcfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrapmodW < 'a > { w : & 'a mut W , } impl < 'a > _WrapmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitpolW < 'a > { w : & 'a mut W , } impl < 'a > _WaitpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BurstenW < 'a > { w : & 'a mut W , } impl < 'a > _BurstenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FaccenW < 'a > { w : & 'a mut W , } impl < 'a > _FaccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MwidW < 'a > { w : & 'a mut W , } impl < 'a > _MwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MtypW < 'a > { w : & 'a mut W , } impl < 'a > _MtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MuxenW < 'a > { w : & 'a mut W , } impl < 'a > _MuxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbkenW < 'a > { w : & 'a mut W , } impl < 'a > _MbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & self ) -> CburstrwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CburstrwR { bits } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & self ) -> AsyncwaitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsyncwaitR { bits } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & self ) -> ExtmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtmodR { bits } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & self ) -> WaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitenR { bits } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & self ) -> WrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrenR { bits } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & self ) -> WaitcfgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitcfgR { bits } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & self ) -> WrapmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrapmodR { bits } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & self ) -> WaitpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitpolR { bits } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & self ) -> BurstenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BurstenR { bits } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & self ) -> FaccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FaccenR { bits } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & self ) -> MwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MwidR { bits } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & self ) -> MtypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtypR { bits } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & self ) -> MuxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuxenR { bits } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & self ) -> MbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbkenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12496 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & mut self ) -> _CburstrwW { _CburstrwW { w : self } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & mut self ) -> _AsyncwaitW { _AsyncwaitW { w : self } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & mut self ) -> _ExtmodW { _ExtmodW { w : self } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & mut self ) -> _WaitenW { _WaitenW { w : self } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & mut self ) -> _WrenW { _WrenW { w : self } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & mut self ) -> _WaitcfgW { _WaitcfgW { w : self } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & mut self ) -> _WrapmodW { _WrapmodW { w : self } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & mut self ) -> _WaitpolW { _WaitpolW { w : self } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & mut self ) -> _BurstenW { _BurstenW { w : self } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & mut self ) -> _FaccenW { _FaccenW { w : self } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & mut self ) -> _MwidW { _MwidW { w : self } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & mut self ) -> _MtypW { _MtypW { w : self } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & mut self ) -> _MuxenW { _MuxenW { w : self } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & mut self ) -> _MbkenW { _MbkenW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select timing register 2" ] pub struct Btr2 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select timing register 2" ] pub mod btr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Btr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BusturnR { bits : u8 , } impl BusturnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BusturnW < 'a > { w : & 'a mut W , } impl < 'a > _BusturnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & self ) -> BusturnR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BusturnR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & mut self ) -> _BusturnW { _BusturnW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select control register 3" ] pub struct Bcr3 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select control register 3" ] pub mod bcr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bcr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CburstrwR { bits : u8 , } impl CburstrwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsyncwaitR { bits : u8 , } impl AsyncwaitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtmodR { bits : u8 , } impl ExtmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitenR { bits : u8 , } impl WaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrenR { bits : u8 , } impl WrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitcfgR { bits : u8 , } impl WaitcfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrapmodR { bits : u8 , } impl WrapmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitpolR { bits : u8 , } impl WaitpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BurstenR { bits : u8 , } impl BurstenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FaccenR { bits : u8 , } impl FaccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MwidR { bits : u8 , } impl MwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtypR { bits : u8 , } impl MtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuxenR { bits : u8 , } impl MuxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbkenR { bits : u8 , } impl MbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CburstrwW < 'a > { w : & 'a mut W , } impl < 'a > _CburstrwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AsyncwaitW < 'a > { w : & 'a mut W , } impl < 'a > _AsyncwaitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtmodW < 'a > { w : & 'a mut W , } impl < 'a > _ExtmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitenW < 'a > { w : & 'a mut W , } impl < 'a > _WaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrenW < 'a > { w : & 'a mut W , } impl < 'a > _WrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitcfgW < 'a > { w : & 'a mut W , } impl < 'a > _WaitcfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrapmodW < 'a > { w : & 'a mut W , } impl < 'a > _WrapmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitpolW < 'a > { w : & 'a mut W , } impl < 'a > _WaitpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BurstenW < 'a > { w : & 'a mut W , } impl < 'a > _BurstenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FaccenW < 'a > { w : & 'a mut W , } impl < 'a > _FaccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MwidW < 'a > { w : & 'a mut W , } impl < 'a > _MwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MtypW < 'a > { w : & 'a mut W , } impl < 'a > _MtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MuxenW < 'a > { w : & 'a mut W , } impl < 'a > _MuxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbkenW < 'a > { w : & 'a mut W , } impl < 'a > _MbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & self ) -> CburstrwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CburstrwR { bits } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & self ) -> AsyncwaitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsyncwaitR { bits } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & self ) -> ExtmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtmodR { bits } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & self ) -> WaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitenR { bits } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & self ) -> WrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrenR { bits } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & self ) -> WaitcfgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitcfgR { bits } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & self ) -> WrapmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrapmodR { bits } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & self ) -> WaitpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitpolR { bits } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & self ) -> BurstenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BurstenR { bits } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & self ) -> FaccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FaccenR { bits } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & self ) -> MwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MwidR { bits } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & self ) -> MtypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtypR { bits } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & self ) -> MuxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuxenR { bits } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & self ) -> MbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbkenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12496 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & mut self ) -> _CburstrwW { _CburstrwW { w : self } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & mut self ) -> _AsyncwaitW { _AsyncwaitW { w : self } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & mut self ) -> _ExtmodW { _ExtmodW { w : self } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & mut self ) -> _WaitenW { _WaitenW { w : self } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & mut self ) -> _WrenW { _WrenW { w : self } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & mut self ) -> _WaitcfgW { _WaitcfgW { w : self } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & mut self ) -> _WrapmodW { _WrapmodW { w : self } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & mut self ) -> _WaitpolW { _WaitpolW { w : self } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & mut self ) -> _BurstenW { _BurstenW { w : self } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & mut self ) -> _FaccenW { _FaccenW { w : self } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & mut self ) -> _MwidW { _MwidW { w : self } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & mut self ) -> _MtypW { _MtypW { w : self } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & mut self ) -> _MuxenW { _MuxenW { w : self } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & mut self ) -> _MbkenW { _MbkenW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select timing register 3" ] pub struct Btr3 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select timing register 3" ] pub mod btr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Btr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BusturnR { bits : u8 , } impl BusturnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BusturnW < 'a > { w : & 'a mut W , } impl < 'a > _BusturnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & self ) -> BusturnR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BusturnR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & mut self ) -> _BusturnW { _BusturnW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select control register 4" ] pub struct Bcr4 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select control register 4" ] pub mod bcr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bcr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CburstrwR { bits : u8 , } impl CburstrwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsyncwaitR { bits : u8 , } impl AsyncwaitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtmodR { bits : u8 , } impl ExtmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitenR { bits : u8 , } impl WaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrenR { bits : u8 , } impl WrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitcfgR { bits : u8 , } impl WaitcfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrapmodR { bits : u8 , } impl WrapmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitpolR { bits : u8 , } impl WaitpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BurstenR { bits : u8 , } impl BurstenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FaccenR { bits : u8 , } impl FaccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MwidR { bits : u8 , } impl MwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtypR { bits : u8 , } impl MtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuxenR { bits : u8 , } impl MuxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbkenR { bits : u8 , } impl MbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CburstrwW < 'a > { w : & 'a mut W , } impl < 'a > _CburstrwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AsyncwaitW < 'a > { w : & 'a mut W , } impl < 'a > _AsyncwaitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtmodW < 'a > { w : & 'a mut W , } impl < 'a > _ExtmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitenW < 'a > { w : & 'a mut W , } impl < 'a > _WaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrenW < 'a > { w : & 'a mut W , } impl < 'a > _WrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitcfgW < 'a > { w : & 'a mut W , } impl < 'a > _WaitcfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrapmodW < 'a > { w : & 'a mut W , } impl < 'a > _WrapmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitpolW < 'a > { w : & 'a mut W , } impl < 'a > _WaitpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BurstenW < 'a > { w : & 'a mut W , } impl < 'a > _BurstenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FaccenW < 'a > { w : & 'a mut W , } impl < 'a > _FaccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MwidW < 'a > { w : & 'a mut W , } impl < 'a > _MwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MtypW < 'a > { w : & 'a mut W , } impl < 'a > _MtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MuxenW < 'a > { w : & 'a mut W , } impl < 'a > _MuxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbkenW < 'a > { w : & 'a mut W , } impl < 'a > _MbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & self ) -> CburstrwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CburstrwR { bits } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & self ) -> AsyncwaitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsyncwaitR { bits } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & self ) -> ExtmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtmodR { bits } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & self ) -> WaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitenR { bits } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & self ) -> WrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrenR { bits } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & self ) -> WaitcfgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitcfgR { bits } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & self ) -> WrapmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrapmodR { bits } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & self ) -> WaitpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitpolR { bits } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & self ) -> BurstenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BurstenR { bits } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & self ) -> FaccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FaccenR { bits } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & self ) -> MwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MwidR { bits } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & self ) -> MtypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtypR { bits } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & self ) -> MuxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuxenR { bits } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & self ) -> MbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbkenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12496 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 19 - CBURSTRW" ] # [ inline ( always ) ] pub fn cburstrw ( & mut self ) -> _CburstrwW { _CburstrwW { w : self } } # [ doc = "Bit 15 - ASYNCWAIT" ] # [ inline ( always ) ] pub fn asyncwait ( & mut self ) -> _AsyncwaitW { _AsyncwaitW { w : self } } # [ doc = "Bit 14 - EXTMOD" ] # [ inline ( always ) ] pub fn extmod ( & mut self ) -> _ExtmodW { _ExtmodW { w : self } } # [ doc = "Bit 13 - WAITEN" ] # [ inline ( always ) ] pub fn waiten ( & mut self ) -> _WaitenW { _WaitenW { w : self } } # [ doc = "Bit 12 - WREN" ] # [ inline ( always ) ] pub fn wren ( & mut self ) -> _WrenW { _WrenW { w : self } } # [ doc = "Bit 11 - WAITCFG" ] # [ inline ( always ) ] pub fn waitcfg ( & mut self ) -> _WaitcfgW { _WaitcfgW { w : self } } # [ doc = "Bit 10 - WRAPMOD" ] # [ inline ( always ) ] pub fn wrapmod ( & mut self ) -> _WrapmodW { _WrapmodW { w : self } } # [ doc = "Bit 9 - WAITPOL" ] # [ inline ( always ) ] pub fn waitpol ( & mut self ) -> _WaitpolW { _WaitpolW { w : self } } # [ doc = "Bit 8 - BURSTEN" ] # [ inline ( always ) ] pub fn bursten ( & mut self ) -> _BurstenW { _BurstenW { w : self } } # [ doc = "Bit 6 - FACCEN" ] # [ inline ( always ) ] pub fn faccen ( & mut self ) -> _FaccenW { _FaccenW { w : self } } # [ doc = "Bits 4:5 - MWID" ] # [ inline ( always ) ] pub fn mwid ( & mut self ) -> _MwidW { _MwidW { w : self } } # [ doc = "Bits 2:3 - MTYP" ] # [ inline ( always ) ] pub fn mtyp ( & mut self ) -> _MtypW { _MtypW { w : self } } # [ doc = "Bit 1 - MUXEN" ] # [ inline ( always ) ] pub fn muxen ( & mut self ) -> _MuxenW { _MuxenW { w : self } } # [ doc = "Bit 0 - MBKEN" ] # [ inline ( always ) ] pub fn mbken ( & mut self ) -> _MbkenW { _MbkenW { w : self } } } } # [ doc = "SRAM/NOR-Flash chip-select timing register 4" ] pub struct Btr4 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash chip-select timing register 4" ] pub mod btr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Btr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BusturnR { bits : u8 , } impl BusturnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BusturnW < 'a > { w : & 'a mut W , } impl < 'a > _BusturnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & self ) -> BusturnR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BusturnR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 16:19 - BUSTURN" ] # [ inline ( always ) ] pub fn busturn ( & mut self ) -> _BusturnW { _BusturnW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "PC Card/NAND Flash control register 2" ] pub struct Pcr2 { register : VolatileCell < u32 > } # [ doc = "PC Card/NAND Flash control register 2" ] pub mod pcr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pcr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EccpsR { bits : u8 , } impl EccpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TarR { bits : u8 , } impl TarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TclrR { bits : u8 , } impl TclrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EccenR { bits : u8 , } impl EccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwidR { bits : u8 , } impl PwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtypR { bits : u8 , } impl PtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PbkenR { bits : u8 , } impl PbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwaitenR { bits : u8 , } impl PwaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EccpsW < 'a > { w : & 'a mut W , } impl < 'a > _EccpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TarW < 'a > { w : & 'a mut W , } impl < 'a > _TarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TclrW < 'a > { w : & 'a mut W , } impl < 'a > _TclrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EccenW < 'a > { w : & 'a mut W , } impl < 'a > _EccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwidW < 'a > { w : & 'a mut W , } impl < 'a > _PwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtypW < 'a > { w : & 'a mut W , } impl < 'a > _PtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PbkenW < 'a > { w : & 'a mut W , } impl < 'a > _PbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwaitenW < 'a > { w : & 'a mut W , } impl < 'a > _PwaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & self ) -> EccpsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccpsR { bits } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & self ) -> TarR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TarR { bits } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & self ) -> TclrR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TclrR { bits } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & self ) -> EccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccenR { bits } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & self ) -> PwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwidR { bits } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & self ) -> PtypR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtypR { bits } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & self ) -> PbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PbkenR { bits } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & self ) -> PwaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwaitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 24 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & mut self ) -> _EccpsW { _EccpsW { w : self } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & mut self ) -> _TarW { _TarW { w : self } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & mut self ) -> _TclrW { _TclrW { w : self } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & mut self ) -> _EccenW { _EccenW { w : self } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & mut self ) -> _PwidW { _PwidW { w : self } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & mut self ) -> _PtypW { _PtypW { w : self } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & mut self ) -> _PbkenW { _PbkenW { w : self } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & mut self ) -> _PwaitenW { _PwaitenW { w : self } } } } # [ doc = "FIFO status and interrupt register 2" ] pub struct Sr2 { register : VolatileCell < u32 > } # [ doc = "FIFO status and interrupt register 2" ] pub mod sr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FemptR { bits : u8 , } impl FemptR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfenR { bits : u8 , } impl IfenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlenR { bits : u8 , } impl IlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrenR { bits : u8 , } impl IrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfsR { bits : u8 , } impl IfsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlsR { bits : u8 , } impl IlsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrsR { bits : u8 , } impl IrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IfenW < 'a > { w : & 'a mut W , } impl < 'a > _IfenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlenW < 'a > { w : & 'a mut W , } impl < 'a > _IlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrenW < 'a > { w : & 'a mut W , } impl < 'a > _IrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IfsW < 'a > { w : & 'a mut W , } impl < 'a > _IfsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlsW < 'a > { w : & 'a mut W , } impl < 'a > _IlsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrsW < 'a > { w : & 'a mut W , } impl < 'a > _IrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - FEMPT" ] # [ inline ( always ) ] pub fn fempt ( & self ) -> FemptR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FemptR { bits } } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & self ) -> IfenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfenR { bits } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & self ) -> IlenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlenR { bits } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & self ) -> IrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrenR { bits } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & self ) -> IfsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfsR { bits } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & self ) -> IlsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlsR { bits } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & self ) -> IrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 64 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & mut self ) -> _IfenW { _IfenW { w : self } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & mut self ) -> _IlenW { _IlenW { w : self } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & mut self ) -> _IrenW { _IrenW { w : self } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & mut self ) -> _IfsW { _IfsW { w : self } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & mut self ) -> _IlsW { _IlsW { w : self } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & mut self ) -> _IrsW { _IrsW { w : self } } } } # [ doc = "Common memory space timing register 2" ] pub struct Pmem2 { register : VolatileCell < u32 > } # [ doc = "Common memory space timing register 2" ] pub mod pmem2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pmem2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MemhizxR { bits : u8 , } impl MemhizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemholdxR { bits : u8 , } impl MemholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemwaitxR { bits : u8 , } impl MemwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemsetxR { bits : u8 , } impl MemsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MemhizxW < 'a > { w : & 'a mut W , } impl < 'a > _MemhizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemholdxW < 'a > { w : & 'a mut W , } impl < 'a > _MemholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _MemwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemsetxW < 'a > { w : & 'a mut W , } impl < 'a > _MemsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & self ) -> MemhizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemhizxR { bits } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & self ) -> MemholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemholdxR { bits } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & self ) -> MemwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemwaitxR { bits } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & self ) -> MemsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & mut self ) -> _MemhizxW { _MemhizxW { w : self } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & mut self ) -> _MemholdxW { _MemholdxW { w : self } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & mut self ) -> _MemwaitxW { _MemwaitxW { w : self } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & mut self ) -> _MemsetxW { _MemsetxW { w : self } } } } # [ doc = "Attribute memory space timing register 2" ] pub struct Patt2 { register : VolatileCell < u32 > } # [ doc = "Attribute memory space timing register 2" ] pub mod patt2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Patt2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AtthizxR { bits : u8 , } impl AtthizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttholdxR { bits : u8 , } impl AttholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttwaitxR { bits : u8 , } impl AttwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttsetxR { bits : u8 , } impl AttsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AtthizxW < 'a > { w : & 'a mut W , } impl < 'a > _AtthizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttholdxW < 'a > { w : & 'a mut W , } impl < 'a > _AttholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _AttwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttsetxW < 'a > { w : & 'a mut W , } impl < 'a > _AttsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & self ) -> AtthizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AtthizxR { bits } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & self ) -> AttholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttholdxR { bits } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & self ) -> AttwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttwaitxR { bits } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & self ) -> AttsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & mut self ) -> _AtthizxW { _AtthizxW { w : self } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & mut self ) -> _AttholdxW { _AttholdxW { w : self } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & mut self ) -> _AttwaitxW { _AttwaitxW { w : self } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & mut self ) -> _AttsetxW { _AttsetxW { w : self } } } } # [ doc = "ECC result register 2" ] pub struct Eccr2 { register : VolatileCell < u32 > } # [ doc = "ECC result register 2" ] pub mod eccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Eccr2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EccxR { bits : u32 , } impl EccxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - ECCx" ] # [ inline ( always ) ] pub fn eccx ( & self ) -> EccxR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; EccxR { bits } } } } # [ doc = "PC Card/NAND Flash control register 3" ] pub struct Pcr3 { register : VolatileCell < u32 > } # [ doc = "PC Card/NAND Flash control register 3" ] pub mod pcr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pcr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EccpsR { bits : u8 , } impl EccpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TarR { bits : u8 , } impl TarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TclrR { bits : u8 , } impl TclrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EccenR { bits : u8 , } impl EccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwidR { bits : u8 , } impl PwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtypR { bits : u8 , } impl PtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PbkenR { bits : u8 , } impl PbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwaitenR { bits : u8 , } impl PwaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EccpsW < 'a > { w : & 'a mut W , } impl < 'a > _EccpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TarW < 'a > { w : & 'a mut W , } impl < 'a > _TarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TclrW < 'a > { w : & 'a mut W , } impl < 'a > _TclrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EccenW < 'a > { w : & 'a mut W , } impl < 'a > _EccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwidW < 'a > { w : & 'a mut W , } impl < 'a > _PwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtypW < 'a > { w : & 'a mut W , } impl < 'a > _PtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PbkenW < 'a > { w : & 'a mut W , } impl < 'a > _PbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwaitenW < 'a > { w : & 'a mut W , } impl < 'a > _PwaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & self ) -> EccpsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccpsR { bits } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & self ) -> TarR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TarR { bits } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & self ) -> TclrR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TclrR { bits } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & self ) -> EccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccenR { bits } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & self ) -> PwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwidR { bits } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & self ) -> PtypR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtypR { bits } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & self ) -> PbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PbkenR { bits } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & self ) -> PwaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwaitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 24 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & mut self ) -> _EccpsW { _EccpsW { w : self } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & mut self ) -> _TarW { _TarW { w : self } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & mut self ) -> _TclrW { _TclrW { w : self } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & mut self ) -> _EccenW { _EccenW { w : self } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & mut self ) -> _PwidW { _PwidW { w : self } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & mut self ) -> _PtypW { _PtypW { w : self } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & mut self ) -> _PbkenW { _PbkenW { w : self } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & mut self ) -> _PwaitenW { _PwaitenW { w : self } } } } # [ doc = "FIFO status and interrupt register 3" ] pub struct Sr3 { register : VolatileCell < u32 > } # [ doc = "FIFO status and interrupt register 3" ] pub mod sr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FemptR { bits : u8 , } impl FemptR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfenR { bits : u8 , } impl IfenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlenR { bits : u8 , } impl IlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrenR { bits : u8 , } impl IrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfsR { bits : u8 , } impl IfsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlsR { bits : u8 , } impl IlsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrsR { bits : u8 , } impl IrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IfenW < 'a > { w : & 'a mut W , } impl < 'a > _IfenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlenW < 'a > { w : & 'a mut W , } impl < 'a > _IlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrenW < 'a > { w : & 'a mut W , } impl < 'a > _IrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IfsW < 'a > { w : & 'a mut W , } impl < 'a > _IfsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlsW < 'a > { w : & 'a mut W , } impl < 'a > _IlsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrsW < 'a > { w : & 'a mut W , } impl < 'a > _IrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - FEMPT" ] # [ inline ( always ) ] pub fn fempt ( & self ) -> FemptR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FemptR { bits } } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & self ) -> IfenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfenR { bits } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & self ) -> IlenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlenR { bits } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & self ) -> IrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrenR { bits } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & self ) -> IfsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfsR { bits } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & self ) -> IlsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlsR { bits } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & self ) -> IrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 64 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & mut self ) -> _IfenW { _IfenW { w : self } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & mut self ) -> _IlenW { _IlenW { w : self } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & mut self ) -> _IrenW { _IrenW { w : self } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & mut self ) -> _IfsW { _IfsW { w : self } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & mut self ) -> _IlsW { _IlsW { w : self } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & mut self ) -> _IrsW { _IrsW { w : self } } } } # [ doc = "Common memory space timing register 3" ] pub struct Pmem3 { register : VolatileCell < u32 > } # [ doc = "Common memory space timing register 3" ] pub mod pmem3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pmem3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MemhizxR { bits : u8 , } impl MemhizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemholdxR { bits : u8 , } impl MemholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemwaitxR { bits : u8 , } impl MemwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemsetxR { bits : u8 , } impl MemsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MemhizxW < 'a > { w : & 'a mut W , } impl < 'a > _MemhizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemholdxW < 'a > { w : & 'a mut W , } impl < 'a > _MemholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _MemwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemsetxW < 'a > { w : & 'a mut W , } impl < 'a > _MemsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & self ) -> MemhizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemhizxR { bits } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & self ) -> MemholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemholdxR { bits } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & self ) -> MemwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemwaitxR { bits } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & self ) -> MemsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & mut self ) -> _MemhizxW { _MemhizxW { w : self } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & mut self ) -> _MemholdxW { _MemholdxW { w : self } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & mut self ) -> _MemwaitxW { _MemwaitxW { w : self } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & mut self ) -> _MemsetxW { _MemsetxW { w : self } } } } # [ doc = "Attribute memory space timing register 3" ] pub struct Patt3 { register : VolatileCell < u32 > } # [ doc = "Attribute memory space timing register 3" ] pub mod patt3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Patt3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AtthizxR { bits : u8 , } impl AtthizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttholdxR { bits : u8 , } impl AttholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttwaitxR { bits : u8 , } impl AttwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttsetxR { bits : u8 , } impl AttsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AtthizxW < 'a > { w : & 'a mut W , } impl < 'a > _AtthizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttholdxW < 'a > { w : & 'a mut W , } impl < 'a > _AttholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _AttwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttsetxW < 'a > { w : & 'a mut W , } impl < 'a > _AttsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & self ) -> AtthizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AtthizxR { bits } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & self ) -> AttholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttholdxR { bits } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & self ) -> AttwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttwaitxR { bits } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & self ) -> AttsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & mut self ) -> _AtthizxW { _AtthizxW { w : self } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & mut self ) -> _AttholdxW { _AttholdxW { w : self } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & mut self ) -> _AttwaitxW { _AttwaitxW { w : self } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & mut self ) -> _AttsetxW { _AttsetxW { w : self } } } } # [ doc = "ECC result register 3" ] pub struct Eccr3 { register : VolatileCell < u32 > } # [ doc = "ECC result register 3" ] pub mod eccr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Eccr3 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EccxR { bits : u32 , } impl EccxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - ECCx" ] # [ inline ( always ) ] pub fn eccx ( & self ) -> EccxR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; EccxR { bits } } } } # [ doc = "PC Card/NAND Flash control register 4" ] pub struct Pcr4 { register : VolatileCell < u32 > } # [ doc = "PC Card/NAND Flash control register 4" ] pub mod pcr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pcr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EccpsR { bits : u8 , } impl EccpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TarR { bits : u8 , } impl TarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TclrR { bits : u8 , } impl TclrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EccenR { bits : u8 , } impl EccenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwidR { bits : u8 , } impl PwidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtypR { bits : u8 , } impl PtypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PbkenR { bits : u8 , } impl PbkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwaitenR { bits : u8 , } impl PwaitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EccpsW < 'a > { w : & 'a mut W , } impl < 'a > _EccpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TarW < 'a > { w : & 'a mut W , } impl < 'a > _TarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TclrW < 'a > { w : & 'a mut W , } impl < 'a > _TclrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EccenW < 'a > { w : & 'a mut W , } impl < 'a > _EccenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwidW < 'a > { w : & 'a mut W , } impl < 'a > _PwidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtypW < 'a > { w : & 'a mut W , } impl < 'a > _PtypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PbkenW < 'a > { w : & 'a mut W , } impl < 'a > _PbkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwaitenW < 'a > { w : & 'a mut W , } impl < 'a > _PwaitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & self ) -> EccpsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccpsR { bits } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & self ) -> TarR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TarR { bits } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & self ) -> TclrR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TclrR { bits } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & self ) -> EccenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EccenR { bits } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & self ) -> PwidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwidR { bits } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & self ) -> PtypR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtypR { bits } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & self ) -> PbkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PbkenR { bits } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & self ) -> PwaitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwaitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 24 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 17:19 - ECCPS" ] # [ inline ( always ) ] pub fn eccps ( & mut self ) -> _EccpsW { _EccpsW { w : self } } # [ doc = "Bits 13:16 - TAR" ] # [ inline ( always ) ] pub fn tar ( & mut self ) -> _TarW { _TarW { w : self } } # [ doc = "Bits 9:12 - TCLR" ] # [ inline ( always ) ] pub fn tclr ( & mut self ) -> _TclrW { _TclrW { w : self } } # [ doc = "Bit 6 - ECCEN" ] # [ inline ( always ) ] pub fn eccen ( & mut self ) -> _EccenW { _EccenW { w : self } } # [ doc = "Bits 4:5 - PWID" ] # [ inline ( always ) ] pub fn pwid ( & mut self ) -> _PwidW { _PwidW { w : self } } # [ doc = "Bit 3 - PTYP" ] # [ inline ( always ) ] pub fn ptyp ( & mut self ) -> _PtypW { _PtypW { w : self } } # [ doc = "Bit 2 - PBKEN" ] # [ inline ( always ) ] pub fn pbken ( & mut self ) -> _PbkenW { _PbkenW { w : self } } # [ doc = "Bit 1 - PWAITEN" ] # [ inline ( always ) ] pub fn pwaiten ( & mut self ) -> _PwaitenW { _PwaitenW { w : self } } } } # [ doc = "FIFO status and interrupt register 4" ] pub struct Sr4 { register : VolatileCell < u32 > } # [ doc = "FIFO status and interrupt register 4" ] pub mod sr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FemptR { bits : u8 , } impl FemptR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfenR { bits : u8 , } impl IfenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlenR { bits : u8 , } impl IlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrenR { bits : u8 , } impl IrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfsR { bits : u8 , } impl IfsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IlsR { bits : u8 , } impl IlsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrsR { bits : u8 , } impl IrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IfenW < 'a > { w : & 'a mut W , } impl < 'a > _IfenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlenW < 'a > { w : & 'a mut W , } impl < 'a > _IlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrenW < 'a > { w : & 'a mut W , } impl < 'a > _IrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IfsW < 'a > { w : & 'a mut W , } impl < 'a > _IfsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IlsW < 'a > { w : & 'a mut W , } impl < 'a > _IlsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrsW < 'a > { w : & 'a mut W , } impl < 'a > _IrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - FEMPT" ] # [ inline ( always ) ] pub fn fempt ( & self ) -> FemptR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FemptR { bits } } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & self ) -> IfenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfenR { bits } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & self ) -> IlenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlenR { bits } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & self ) -> IrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrenR { bits } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & self ) -> IfsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfsR { bits } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & self ) -> IlsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IlsR { bits } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & self ) -> IrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 64 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - IFEN" ] # [ inline ( always ) ] pub fn ifen ( & mut self ) -> _IfenW { _IfenW { w : self } } # [ doc = "Bit 4 - ILEN" ] # [ inline ( always ) ] pub fn ilen ( & mut self ) -> _IlenW { _IlenW { w : self } } # [ doc = "Bit 3 - IREN" ] # [ inline ( always ) ] pub fn iren ( & mut self ) -> _IrenW { _IrenW { w : self } } # [ doc = "Bit 2 - IFS" ] # [ inline ( always ) ] pub fn ifs ( & mut self ) -> _IfsW { _IfsW { w : self } } # [ doc = "Bit 1 - ILS" ] # [ inline ( always ) ] pub fn ils ( & mut self ) -> _IlsW { _IlsW { w : self } } # [ doc = "Bit 0 - IRS" ] # [ inline ( always ) ] pub fn irs ( & mut self ) -> _IrsW { _IrsW { w : self } } } } # [ doc = "Common memory space timing register 4" ] pub struct Pmem4 { register : VolatileCell < u32 > } # [ doc = "Common memory space timing register 4" ] pub mod pmem4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pmem4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MemhizxR { bits : u8 , } impl MemhizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemholdxR { bits : u8 , } impl MemholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemwaitxR { bits : u8 , } impl MemwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MemsetxR { bits : u8 , } impl MemsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MemhizxW < 'a > { w : & 'a mut W , } impl < 'a > _MemhizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemholdxW < 'a > { w : & 'a mut W , } impl < 'a > _MemholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _MemwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MemsetxW < 'a > { w : & 'a mut W , } impl < 'a > _MemsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & self ) -> MemhizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemhizxR { bits } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & self ) -> MemholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemholdxR { bits } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & self ) -> MemwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemwaitxR { bits } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & self ) -> MemsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MemsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - MEMHIZx" ] # [ inline ( always ) ] pub fn memhizx ( & mut self ) -> _MemhizxW { _MemhizxW { w : self } } # [ doc = "Bits 16:23 - MEMHOLDx" ] # [ inline ( always ) ] pub fn memholdx ( & mut self ) -> _MemholdxW { _MemholdxW { w : self } } # [ doc = "Bits 8:15 - MEMWAITx" ] # [ inline ( always ) ] pub fn memwaitx ( & mut self ) -> _MemwaitxW { _MemwaitxW { w : self } } # [ doc = "Bits 0:7 - MEMSETx" ] # [ inline ( always ) ] pub fn memsetx ( & mut self ) -> _MemsetxW { _MemsetxW { w : self } } } } # [ doc = "Attribute memory space timing register 4" ] pub struct Patt4 { register : VolatileCell < u32 > } # [ doc = "Attribute memory space timing register 4" ] pub mod patt4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Patt4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AtthizxR { bits : u8 , } impl AtthizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttholdxR { bits : u8 , } impl AttholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttwaitxR { bits : u8 , } impl AttwaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AttsetxR { bits : u8 , } impl AttsetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AtthizxW < 'a > { w : & 'a mut W , } impl < 'a > _AtthizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttholdxW < 'a > { w : & 'a mut W , } impl < 'a > _AttholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttwaitxW < 'a > { w : & 'a mut W , } impl < 'a > _AttwaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AttsetxW < 'a > { w : & 'a mut W , } impl < 'a > _AttsetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & self ) -> AtthizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AtthizxR { bits } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & self ) -> AttholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttholdxR { bits } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & self ) -> AttwaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttwaitxR { bits } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & self ) -> AttsetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AttsetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - ATTHIZx" ] # [ inline ( always ) ] pub fn atthizx ( & mut self ) -> _AtthizxW { _AtthizxW { w : self } } # [ doc = "Bits 16:23 - ATTHOLDx" ] # [ inline ( always ) ] pub fn attholdx ( & mut self ) -> _AttholdxW { _AttholdxW { w : self } } # [ doc = "Bits 8:15 - ATTWAITx" ] # [ inline ( always ) ] pub fn attwaitx ( & mut self ) -> _AttwaitxW { _AttwaitxW { w : self } } # [ doc = "Bits 0:7 - ATTSETx" ] # [ inline ( always ) ] pub fn attsetx ( & mut self ) -> _AttsetxW { _AttsetxW { w : self } } } } # [ doc = "I/O space timing register 4" ] pub struct Pio4 { register : VolatileCell < u32 > } # [ doc = "I/O space timing register 4" ] pub mod pio4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pio4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IohizxR { bits : u8 , } impl IohizxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IoholdxR { bits : u8 , } impl IoholdxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IowaitxR { bits : u8 , } impl IowaitxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IosetxR { bits : u8 , } impl IosetxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IohizxW < 'a > { w : & 'a mut W , } impl < 'a > _IohizxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IoholdxW < 'a > { w : & 'a mut W , } impl < 'a > _IoholdxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IowaitxW < 'a > { w : & 'a mut W , } impl < 'a > _IowaitxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IosetxW < 'a > { w : & 'a mut W , } impl < 'a > _IosetxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - IOHIZx" ] # [ inline ( always ) ] pub fn iohizx ( & self ) -> IohizxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IohizxR { bits } } # [ doc = "Bits 16:23 - IOHOLDx" ] # [ inline ( always ) ] pub fn ioholdx ( & self ) -> IoholdxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IoholdxR { bits } } # [ doc = "Bits 8:15 - IOWAITx" ] # [ inline ( always ) ] pub fn iowaitx ( & self ) -> IowaitxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IowaitxR { bits } } # [ doc = "Bits 0:7 - IOSETx" ] # [ inline ( always ) ] pub fn iosetx ( & self ) -> IosetxR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IosetxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4244438268 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - IOHIZx" ] # [ inline ( always ) ] pub fn iohizx ( & mut self ) -> _IohizxW { _IohizxW { w : self } } # [ doc = "Bits 16:23 - IOHOLDx" ] # [ inline ( always ) ] pub fn ioholdx ( & mut self ) -> _IoholdxW { _IoholdxW { w : self } } # [ doc = "Bits 8:15 - IOWAITx" ] # [ inline ( always ) ] pub fn iowaitx ( & mut self ) -> _IowaitxW { _IowaitxW { w : self } } # [ doc = "Bits 0:7 - IOSETx" ] # [ inline ( always ) ] pub fn iosetx ( & mut self ) -> _IosetxW { _IosetxW { w : self } } } } # [ doc = "SRAM/NOR-Flash write timing registers 1" ] pub struct Bwtr1 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash write timing registers 1" ] pub mod bwtr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bwtr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 268435455 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash write timing registers 2" ] pub struct Bwtr2 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash write timing registers 2" ] pub mod bwtr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bwtr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 268435455 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash write timing registers 3" ] pub struct Bwtr3 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash write timing registers 3" ] pub mod bwtr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bwtr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 268435455 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } # [ doc = "SRAM/NOR-Flash write timing registers 4" ] pub struct Bwtr4 { register : VolatileCell < u32 > } # [ doc = "SRAM/NOR-Flash write timing registers 4" ] pub mod bwtr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bwtr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AccmodR { bits : u8 , } impl AccmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlatR { bits : u8 , } impl DatlatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatastR { bits : u8 , } impl DatastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddhldR { bits : u8 , } impl AddhldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddsetR { bits : u8 , } impl AddsetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AccmodW < 'a > { w : & 'a mut W , } impl < 'a > _AccmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlatW < 'a > { w : & 'a mut W , } impl < 'a > _DatlatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatastW < 'a > { w : & 'a mut W , } impl < 'a > _DatastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddhldW < 'a > { w : & 'a mut W , } impl < 'a > _AddhldW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddsetW < 'a > { w : & 'a mut W , } impl < 'a > _AddsetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & self ) -> AccmodR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AccmodR { bits } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & self ) -> DatlatR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlatR { bits } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & self ) -> DatastR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatastR { bits } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & self ) -> AddhldR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddhldR { bits } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & self ) -> AddsetR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddsetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 268435455 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:29 - ACCMOD" ] # [ inline ( always ) ] pub fn accmod ( & mut self ) -> _AccmodW { _AccmodW { w : self } } # [ doc = "Bits 24:27 - DATLAT" ] # [ inline ( always ) ] pub fn datlat ( & mut self ) -> _DatlatW { _DatlatW { w : self } } # [ doc = "Bits 20:23 - CLKDIV" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } # [ doc = "Bits 8:15 - DATAST" ] # [ inline ( always ) ] pub fn datast ( & mut self ) -> _DatastW { _DatastW { w : self } } # [ doc = "Bits 4:7 - ADDHLD" ] # [ inline ( always ) ] pub fn addhld ( & mut self ) -> _AddhldW { _AddhldW { w : self } } # [ doc = "Bits 0:3 - ADDSET" ] # [ inline ( always ) ] pub fn addset ( & mut self ) -> _AddsetW { _AddsetW { w : self } } } } } # [ doc = "Flexible static memory controller" ] pub struct Fsmc { register_block : fsmc :: RegisterBlock } impl Deref for Fsmc { type Target = fsmc :: RegisterBlock ; fn deref ( & self ) -> & fsmc :: RegisterBlock { & self . register_block } } # [ doc = "Debug support" ] pub const DBG : Peripheral < Dbg > = unsafe { Peripheral :: new ( 3758366720 ) } ; # [ doc = "Debug support" ] pub mod dbg { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - IDCODE" ] pub dbgmcu_idcode : DbgmcuIdcode , # [ doc = "0x04 - Control Register" ] pub dbgmcu_cr : DbgmcuCr , # [ doc = "0x08 - Debug MCU APB1 Freeze registe" ] pub dbgmcu_apb1_fz : DbgmcuApb1Fz , # [ doc = "0x0c - Debug MCU APB2 Freeze registe" ] pub dbgmcu_apb2_fz : DbgmcuApb2Fz , } # [ doc = "IDCODE" ] pub struct DbgmcuIdcode { register : VolatileCell < u32 > } # [ doc = "IDCODE" ] pub mod dbgmcu_idcode { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: DbgmcuIdcode { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct DevIdR { bits : u16 , } impl DevIdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RevIdR { bits : u16 , } impl RevIdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - DEV_ID" ] # [ inline ( always ) ] pub fn dev_id ( & self ) -> DevIdR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DevIdR { bits } } # [ doc = "Bits 16:31 - REV_ID" ] # [ inline ( always ) ] pub fn rev_id ( & self ) -> RevIdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RevIdR { bits } } } } # [ doc = "Control Register" ] pub struct DbgmcuCr { register : VolatileCell < u32 > } # [ doc = "Control Register" ] pub mod dbgmcu_cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: DbgmcuCr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DbgSleepR { bits : u8 , } impl DbgSleepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgStopR { bits : u8 , } impl DbgStopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgStandbyR { bits : u8 , } impl DbgStandbyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TraceIoenR { bits : u8 , } impl TraceIoenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TraceModeR { bits : u8 , } impl TraceModeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgI2c2SmbusTimeoutR { bits : u8 , } impl DbgI2c2SmbusTimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim8StopR { bits : u8 , } impl DbgTim8StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim5StopR { bits : u8 , } impl DbgTim5StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim6StopR { bits : u8 , } impl DbgTim6StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim7StopR { bits : u8 , } impl DbgTim7StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DbgSleepW < 'a > { w : & 'a mut W , } impl < 'a > _DbgSleepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgStopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgStopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgStandbyW < 'a > { w : & 'a mut W , } impl < 'a > _DbgStandbyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TraceIoenW < 'a > { w : & 'a mut W , } impl < 'a > _TraceIoenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TraceModeW < 'a > { w : & 'a mut W , } impl < 'a > _TraceModeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgI2c2SmbusTimeoutW < 'a > { w : & 'a mut W , } impl < 'a > _DbgI2c2SmbusTimeoutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim8StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim8StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim5StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim5StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim6StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim6StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim7StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim7StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - DBG_SLEEP" ] # [ inline ( always ) ] pub fn dbg_sleep ( & self ) -> DbgSleepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgSleepR { bits } } # [ doc = "Bit 1 - DBG_STOP" ] # [ inline ( always ) ] pub fn dbg_stop ( & self ) -> DbgStopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgStopR { bits } } # [ doc = "Bit 2 - DBG_STANDBY" ] # [ inline ( always ) ] pub fn dbg_standby ( & self ) -> DbgStandbyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgStandbyR { bits } } # [ doc = "Bit 5 - TRACE_IOEN" ] # [ inline ( always ) ] pub fn trace_ioen ( & self ) -> TraceIoenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TraceIoenR { bits } } # [ doc = "Bits 6:7 - TRACE_MODE" ] # [ inline ( always ) ] pub fn trace_mode ( & self ) -> TraceModeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TraceModeR { bits } } # [ doc = "Bit 16 - DBG_I2C2_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_i2c2_smbus_timeout ( & self ) -> DbgI2c2SmbusTimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgI2c2SmbusTimeoutR { bits } } # [ doc = "Bit 17 - DBG_TIM8_STOP" ] # [ inline ( always ) ] pub fn dbg_tim8_stop ( & self ) -> DbgTim8StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim8StopR { bits } } # [ doc = "Bit 18 - DBG_TIM5_STOP" ] # [ inline ( always ) ] pub fn dbg_tim5_stop ( & self ) -> DbgTim5StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim5StopR { bits } } # [ doc = "Bit 19 - DBG_TIM6_STOP" ] # [ inline ( always ) ] pub fn dbg_tim6_stop ( & self ) -> DbgTim6StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim6StopR { bits } } # [ doc = "Bit 20 - DBG_TIM7_STOP" ] # [ inline ( always ) ] pub fn dbg_tim7_stop ( & self ) -> DbgTim7StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim7StopR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - DBG_SLEEP" ] # [ inline ( always ) ] pub fn dbg_sleep ( & mut self ) -> _DbgSleepW { _DbgSleepW { w : self } } # [ doc = "Bit 1 - DBG_STOP" ] # [ inline ( always ) ] pub fn dbg_stop ( & mut self ) -> _DbgStopW { _DbgStopW { w : self } } # [ doc = "Bit 2 - DBG_STANDBY" ] # [ inline ( always ) ] pub fn dbg_standby ( & mut self ) -> _DbgStandbyW { _DbgStandbyW { w : self } } # [ doc = "Bit 5 - TRACE_IOEN" ] # [ inline ( always ) ] pub fn trace_ioen ( & mut self ) -> _TraceIoenW { _TraceIoenW { w : self } } # [ doc = "Bits 6:7 - TRACE_MODE" ] # [ inline ( always ) ] pub fn trace_mode ( & mut self ) -> _TraceModeW { _TraceModeW { w : self } } # [ doc = "Bit 16 - DBG_I2C2_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_i2c2_smbus_timeout ( & mut self ) -> _DbgI2c2SmbusTimeoutW { _DbgI2c2SmbusTimeoutW { w : self } } # [ doc = "Bit 17 - DBG_TIM8_STOP" ] # [ inline ( always ) ] pub fn dbg_tim8_stop ( & mut self ) -> _DbgTim8StopW { _DbgTim8StopW { w : self } } # [ doc = "Bit 18 - DBG_TIM5_STOP" ] # [ inline ( always ) ] pub fn dbg_tim5_stop ( & mut self ) -> _DbgTim5StopW { _DbgTim5StopW { w : self } } # [ doc = "Bit 19 - DBG_TIM6_STOP" ] # [ inline ( always ) ] pub fn dbg_tim6_stop ( & mut self ) -> _DbgTim6StopW { _DbgTim6StopW { w : self } } # [ doc = "Bit 20 - DBG_TIM7_STOP" ] # [ inline ( always ) ] pub fn dbg_tim7_stop ( & mut self ) -> _DbgTim7StopW { _DbgTim7StopW { w : self } } } } # [ doc = "Debug MCU APB1 Freeze registe" ] pub struct DbgmcuApb1Fz { register : VolatileCell < u32 > } # [ doc = "Debug MCU APB1 Freeze registe" ] pub mod dbgmcu_apb1_fz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: DbgmcuApb1Fz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DbgTim2StopR { bits : u8 , } impl DbgTim2StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim3StopR { bits : u8 , } impl DbgTim3StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim4StopR { bits : u8 , } impl DbgTim4StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim5StopR { bits : u8 , } impl DbgTim5StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim6StopR { bits : u8 , } impl DbgTim6StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim7StopR { bits : u8 , } impl DbgTim7StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim12StopR { bits : u8 , } impl DbgTim12StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim13StopR { bits : u8 , } impl DbgTim13StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim14StopR { bits : u8 , } impl DbgTim14StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgWwdgStopR { bits : u8 , } impl DbgWwdgStopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgIwdegStopR { bits : u8 , } impl DbgIwdegStopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgJ2c1SmbusTimeoutR { bits : u8 , } impl DbgJ2c1SmbusTimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgJ2c2SmbusTimeoutR { bits : u8 , } impl DbgJ2c2SmbusTimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgJ2c3smbusTimeoutR { bits : u8 , } impl DbgJ2c3smbusTimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgCan1StopR { bits : u8 , } impl DbgCan1StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgCan2StopR { bits : u8 , } impl DbgCan2StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DbgTim2StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim2StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim3StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim3StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim4StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim4StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim5StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim5StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim6StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim6StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim7StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim7StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim12StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim12StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim13StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim13StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim14StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim14StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgWwdgStopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgWwdgStopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgIwdegStopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgIwdegStopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgJ2c1SmbusTimeoutW < 'a > { w : & 'a mut W , } impl < 'a > _DbgJ2c1SmbusTimeoutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgJ2c2SmbusTimeoutW < 'a > { w : & 'a mut W , } impl < 'a > _DbgJ2c2SmbusTimeoutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgJ2c3smbusTimeoutW < 'a > { w : & 'a mut W , } impl < 'a > _DbgJ2c3smbusTimeoutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgCan1StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgCan1StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgCan2StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgCan2StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - DBG_TIM2_STOP" ] # [ inline ( always ) ] pub fn dbg_tim2_stop ( & self ) -> DbgTim2StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim2StopR { bits } } # [ doc = "Bit 1 - DBG_TIM3 _STOP" ] # [ inline ( always ) ] pub fn dbg_tim3_stop ( & self ) -> DbgTim3StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim3StopR { bits } } # [ doc = "Bit 2 - DBG_TIM4_STOP" ] # [ inline ( always ) ] pub fn dbg_tim4_stop ( & self ) -> DbgTim4StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim4StopR { bits } } # [ doc = "Bit 3 - DBG_TIM5_STOP" ] # [ inline ( always ) ] pub fn dbg_tim5_stop ( & self ) -> DbgTim5StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim5StopR { bits } } # [ doc = "Bit 4 - DBG_TIM6_STOP" ] # [ inline ( always ) ] pub fn dbg_tim6_stop ( & self ) -> DbgTim6StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim6StopR { bits } } # [ doc = "Bit 5 - DBG_TIM7_STOP" ] # [ inline ( always ) ] pub fn dbg_tim7_stop ( & self ) -> DbgTim7StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim7StopR { bits } } # [ doc = "Bit 6 - DBG_TIM12_STOP" ] # [ inline ( always ) ] pub fn dbg_tim12_stop ( & self ) -> DbgTim12StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim12StopR { bits } } # [ doc = "Bit 7 - DBG_TIM13_STOP" ] # [ inline ( always ) ] pub fn dbg_tim13_stop ( & self ) -> DbgTim13StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim13StopR { bits } } # [ doc = "Bit 8 - DBG_TIM14_STOP" ] # [ inline ( always ) ] pub fn dbg_tim14_stop ( & self ) -> DbgTim14StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim14StopR { bits } } # [ doc = "Bit 11 - DBG_WWDG_STOP" ] # [ inline ( always ) ] pub fn dbg_wwdg_stop ( & self ) -> DbgWwdgStopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgWwdgStopR { bits } } # [ doc = "Bit 12 - DBG_IWDEG_STOP" ] # [ inline ( always ) ] pub fn dbg_iwdeg_stop ( & self ) -> DbgIwdegStopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgIwdegStopR { bits } } # [ doc = "Bit 21 - DBG_J2C1_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c1_smbus_timeout ( & self ) -> DbgJ2c1SmbusTimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgJ2c1SmbusTimeoutR { bits } } # [ doc = "Bit 22 - DBG_J2C2_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c2_smbus_timeout ( & self ) -> DbgJ2c2SmbusTimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgJ2c2SmbusTimeoutR { bits } } # [ doc = "Bit 23 - DBG_J2C3SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c3smbus_timeout ( & self ) -> DbgJ2c3smbusTimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgJ2c3smbusTimeoutR { bits } } # [ doc = "Bit 25 - DBG_CAN1_STOP" ] # [ inline ( always ) ] pub fn dbg_can1_stop ( & self ) -> DbgCan1StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgCan1StopR { bits } } # [ doc = "Bit 26 - DBG_CAN2_STOP" ] # [ inline ( always ) ] pub fn dbg_can2_stop ( & self ) -> DbgCan2StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgCan2StopR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - DBG_TIM2_STOP" ] # [ inline ( always ) ] pub fn dbg_tim2_stop ( & mut self ) -> _DbgTim2StopW { _DbgTim2StopW { w : self } } # [ doc = "Bit 1 - DBG_TIM3 _STOP" ] # [ inline ( always ) ] pub fn dbg_tim3_stop ( & mut self ) -> _DbgTim3StopW { _DbgTim3StopW { w : self } } # [ doc = "Bit 2 - DBG_TIM4_STOP" ] # [ inline ( always ) ] pub fn dbg_tim4_stop ( & mut self ) -> _DbgTim4StopW { _DbgTim4StopW { w : self } } # [ doc = "Bit 3 - DBG_TIM5_STOP" ] # [ inline ( always ) ] pub fn dbg_tim5_stop ( & mut self ) -> _DbgTim5StopW { _DbgTim5StopW { w : self } } # [ doc = "Bit 4 - DBG_TIM6_STOP" ] # [ inline ( always ) ] pub fn dbg_tim6_stop ( & mut self ) -> _DbgTim6StopW { _DbgTim6StopW { w : self } } # [ doc = "Bit 5 - DBG_TIM7_STOP" ] # [ inline ( always ) ] pub fn dbg_tim7_stop ( & mut self ) -> _DbgTim7StopW { _DbgTim7StopW { w : self } } # [ doc = "Bit 6 - DBG_TIM12_STOP" ] # [ inline ( always ) ] pub fn dbg_tim12_stop ( & mut self ) -> _DbgTim12StopW { _DbgTim12StopW { w : self } } # [ doc = "Bit 7 - DBG_TIM13_STOP" ] # [ inline ( always ) ] pub fn dbg_tim13_stop ( & mut self ) -> _DbgTim13StopW { _DbgTim13StopW { w : self } } # [ doc = "Bit 8 - DBG_TIM14_STOP" ] # [ inline ( always ) ] pub fn dbg_tim14_stop ( & mut self ) -> _DbgTim14StopW { _DbgTim14StopW { w : self } } # [ doc = "Bit 11 - DBG_WWDG_STOP" ] # [ inline ( always ) ] pub fn dbg_wwdg_stop ( & mut self ) -> _DbgWwdgStopW { _DbgWwdgStopW { w : self } } # [ doc = "Bit 12 - DBG_IWDEG_STOP" ] # [ inline ( always ) ] pub fn dbg_iwdeg_stop ( & mut self ) -> _DbgIwdegStopW { _DbgIwdegStopW { w : self } } # [ doc = "Bit 21 - DBG_J2C1_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c1_smbus_timeout ( & mut self ) -> _DbgJ2c1SmbusTimeoutW { _DbgJ2c1SmbusTimeoutW { w : self } } # [ doc = "Bit 22 - DBG_J2C2_SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c2_smbus_timeout ( & mut self ) -> _DbgJ2c2SmbusTimeoutW { _DbgJ2c2SmbusTimeoutW { w : self } } # [ doc = "Bit 23 - DBG_J2C3SMBUS_TIMEOUT" ] # [ inline ( always ) ] pub fn dbg_j2c3smbus_timeout ( & mut self ) -> _DbgJ2c3smbusTimeoutW { _DbgJ2c3smbusTimeoutW { w : self } } # [ doc = "Bit 25 - DBG_CAN1_STOP" ] # [ inline ( always ) ] pub fn dbg_can1_stop ( & mut self ) -> _DbgCan1StopW { _DbgCan1StopW { w : self } } # [ doc = "Bit 26 - DBG_CAN2_STOP" ] # [ inline ( always ) ] pub fn dbg_can2_stop ( & mut self ) -> _DbgCan2StopW { _DbgCan2StopW { w : self } } } } # [ doc = "Debug MCU APB2 Freeze registe" ] pub struct DbgmcuApb2Fz { register : VolatileCell < u32 > } # [ doc = "Debug MCU APB2 Freeze registe" ] pub mod dbgmcu_apb2_fz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: DbgmcuApb2Fz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DbgTim1StopR { bits : u8 , } impl DbgTim1StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim8StopR { bits : u8 , } impl DbgTim8StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim9StopR { bits : u8 , } impl DbgTim9StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim10StopR { bits : u8 , } impl DbgTim10StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbgTim11StopR { bits : u8 , } impl DbgTim11StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DbgTim1StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim1StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim8StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim8StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim9StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim9StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim10StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim10StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbgTim11StopW < 'a > { w : & 'a mut W , } impl < 'a > _DbgTim11StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - TIM1 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim1_stop ( & self ) -> DbgTim1StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim1StopR { bits } } # [ doc = "Bit 1 - TIM8 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim8_stop ( & self ) -> DbgTim8StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim8StopR { bits } } # [ doc = "Bit 16 - TIM9 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim9_stop ( & self ) -> DbgTim9StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim9StopR { bits } } # [ doc = "Bit 17 - TIM10 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim10_stop ( & self ) -> DbgTim10StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim10StopR { bits } } # [ doc = "Bit 18 - TIM11 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim11_stop ( & self ) -> DbgTim11StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbgTim11StopR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - TIM1 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim1_stop ( & mut self ) -> _DbgTim1StopW { _DbgTim1StopW { w : self } } # [ doc = "Bit 1 - TIM8 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim8_stop ( & mut self ) -> _DbgTim8StopW { _DbgTim8StopW { w : self } } # [ doc = "Bit 16 - TIM9 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim9_stop ( & mut self ) -> _DbgTim9StopW { _DbgTim9StopW { w : self } } # [ doc = "Bit 17 - TIM10 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim10_stop ( & mut self ) -> _DbgTim10StopW { _DbgTim10StopW { w : self } } # [ doc = "Bit 18 - TIM11 counter stopped when core is halted" ] # [ inline ( always ) ] pub fn dbg_tim11_stop ( & mut self ) -> _DbgTim11StopW { _DbgTim11StopW { w : self } } } } } # [ doc = "Debug support" ] pub struct Dbg { register_block : dbg :: RegisterBlock } impl Deref for Dbg { type Target = dbg :: RegisterBlock ; fn deref ( & self ) -> & dbg :: RegisterBlock { & self . register_block } } # [ doc = "DMA controller" ] pub const DMA2 : Peripheral < Dma2 > = unsafe { Peripheral :: new ( 1073898496 ) } ; # [ doc = "DMA controller" ] pub mod dma2 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - low interrupt status register" ] pub lisr : Lisr , # [ doc = "0x04 - high interrupt status register" ] pub hisr : Hisr , # [ doc = "0x08 - low interrupt flag clear register" ] pub lifcr : Lifcr , # [ doc = "0x0c - high interrupt flag clear register" ] pub hifcr : Hifcr , # [ doc = "0x10 - stream x configuration register" ] pub s0cr : S0cr , # [ doc = "0x14 - stream x number of data register" ] pub s0ndtr : S0ndtr , # [ doc = "0x18 - stream x peripheral address register" ] pub s0par : S0par , # [ doc = "0x1c - stream x memory 0 address register" ] pub s0m0ar : S0m0ar , # [ doc = "0x20 - stream x memory 1 address register" ] pub s0m1ar : S0m1ar , # [ doc = "0x24 - stream x FIFO control register" ] pub s0fcr : S0fcr , # [ doc = "0x28 - stream x configuration register" ] pub s1cr : S1cr , # [ doc = "0x2c - stream x number of data register" ] pub s1ndtr : S1ndtr , # [ doc = "0x30 - stream x peripheral address register" ] pub s1par : S1par , # [ doc = "0x34 - stream x memory 0 address register" ] pub s1m0ar : S1m0ar , # [ doc = "0x38 - stream x memory 1 address register" ] pub s1m1ar : S1m1ar , # [ doc = "0x3c - stream x FIFO control register" ] pub s1fcr : S1fcr , # [ doc = "0x40 - stream x configuration register" ] pub s2cr : S2cr , # [ doc = "0x44 - stream x number of data register" ] pub s2ndtr : S2ndtr , # [ doc = "0x48 - stream x peripheral address register" ] pub s2par : S2par , # [ doc = "0x4c - stream x memory 0 address register" ] pub s2m0ar : S2m0ar , # [ doc = "0x50 - stream x memory 1 address register" ] pub s2m1ar : S2m1ar , # [ doc = "0x54 - stream x FIFO control register" ] pub s2fcr : S2fcr , # [ doc = "0x58 - stream x configuration register" ] pub s3cr : S3cr , # [ doc = "0x5c - stream x number of data register" ] pub s3ndtr : S3ndtr , # [ doc = "0x60 - stream x peripheral address register" ] pub s3par : S3par , # [ doc = "0x64 - stream x memory 0 address register" ] pub s3m0ar : S3m0ar , # [ doc = "0x68 - stream x memory 1 address register" ] pub s3m1ar : S3m1ar , # [ doc = "0x6c - stream x FIFO control register" ] pub s3fcr : S3fcr , # [ doc = "0x70 - stream x configuration register" ] pub s4cr : S4cr , # [ doc = "0x74 - stream x number of data register" ] pub s4ndtr : S4ndtr , # [ doc = "0x78 - stream x peripheral address register" ] pub s4par : S4par , # [ doc = "0x7c - stream x memory 0 address register" ] pub s4m0ar : S4m0ar , # [ doc = "0x80 - stream x memory 1 address register" ] pub s4m1ar : S4m1ar , # [ doc = "0x84 - stream x FIFO control register" ] pub s4fcr : S4fcr , # [ doc = "0x88 - stream x configuration register" ] pub s5cr : S5cr , # [ doc = "0x8c - stream x number of data register" ] pub s5ndtr : S5ndtr , # [ doc = "0x90 - stream x peripheral address register" ] pub s5par : S5par , # [ doc = "0x94 - stream x memory 0 address register" ] pub s5m0ar : S5m0ar , # [ doc = "0x98 - stream x memory 1 address register" ] pub s5m1ar : S5m1ar , # [ doc = "0x9c - stream x FIFO control register" ] pub s5fcr : S5fcr , # [ doc = "0xa0 - stream x configuration register" ] pub s6cr : S6cr , # [ doc = "0xa4 - stream x number of data register" ] pub s6ndtr : S6ndtr , # [ doc = "0xa8 - stream x peripheral address register" ] pub s6par : S6par , # [ doc = "0xac - stream x memory 0 address register" ] pub s6m0ar : S6m0ar , # [ doc = "0xb0 - stream x memory 1 address register" ] pub s6m1ar : S6m1ar , # [ doc = "0xb4 - stream x FIFO control register" ] pub s6fcr : S6fcr , # [ doc = "0xb8 - stream x configuration register" ] pub s7cr : S7cr , # [ doc = "0xbc - stream x number of data register" ] pub s7ndtr : S7ndtr , # [ doc = "0xc0 - stream x peripheral address register" ] pub s7par : S7par , # [ doc = "0xc4 - stream x memory 0 address register" ] pub s7m0ar : S7m0ar , # [ doc = "0xc8 - stream x memory 1 address register" ] pub s7m1ar : S7m1ar , # [ doc = "0xcc - stream x FIFO control register" ] pub s7fcr : S7fcr , } # [ doc = "low interrupt status register" ] pub struct Lisr { register : VolatileCell < u32 > } # [ doc = "low interrupt status register" ] pub mod lisr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Lisr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Tcif3R { bits : u8 , } impl Tcif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif3R { bits : u8 , } impl Htif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif3R { bits : u8 , } impl Teif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif3R { bits : u8 , } impl Dmeif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif3R { bits : u8 , } impl Feif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif2R { bits : u8 , } impl Tcif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif2R { bits : u8 , } impl Htif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif2R { bits : u8 , } impl Teif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif2R { bits : u8 , } impl Dmeif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif2R { bits : u8 , } impl Feif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif1R { bits : u8 , } impl Tcif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif1R { bits : u8 , } impl Htif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif1R { bits : u8 , } impl Teif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif1R { bits : u8 , } impl Dmeif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif1R { bits : u8 , } impl Feif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif0R { bits : u8 , } impl Tcif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif0R { bits : u8 , } impl Htif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif0R { bits : u8 , } impl Teif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif0R { bits : u8 , } impl Dmeif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif0R { bits : u8 , } impl Feif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - Stream x transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn tcif3 ( & self ) -> Tcif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif3R { bits } } # [ doc = "Bit 26 - Stream x half transfer interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn htif3 ( & self ) -> Htif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif3R { bits } } # [ doc = "Bit 25 - Stream x transfer error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn teif3 ( & self ) -> Teif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif3R { bits } } # [ doc = "Bit 24 - Stream x direct mode error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn dmeif3 ( & self ) -> Dmeif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif3R { bits } } # [ doc = "Bit 22 - Stream x FIFO error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn feif3 ( & self ) -> Feif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif3R { bits } } # [ doc = "Bit 21 - Stream x transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn tcif2 ( & self ) -> Tcif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif2R { bits } } # [ doc = "Bit 20 - Stream x half transfer interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn htif2 ( & self ) -> Htif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif2R { bits } } # [ doc = "Bit 19 - Stream x transfer error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn teif2 ( & self ) -> Teif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif2R { bits } } # [ doc = "Bit 18 - Stream x direct mode error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn dmeif2 ( & self ) -> Dmeif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif2R { bits } } # [ doc = "Bit 16 - Stream x FIFO error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn feif2 ( & self ) -> Feif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif2R { bits } } # [ doc = "Bit 11 - Stream x transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn tcif1 ( & self ) -> Tcif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif1R { bits } } # [ doc = "Bit 10 - Stream x half transfer interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn htif1 ( & self ) -> Htif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif1R { bits } } # [ doc = "Bit 9 - Stream x transfer error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn teif1 ( & self ) -> Teif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif1R { bits } } # [ doc = "Bit 8 - Stream x direct mode error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn dmeif1 ( & self ) -> Dmeif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif1R { bits } } # [ doc = "Bit 6 - Stream x FIFO error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn feif1 ( & self ) -> Feif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif1R { bits } } # [ doc = "Bit 5 - Stream x transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn tcif0 ( & self ) -> Tcif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif0R { bits } } # [ doc = "Bit 4 - Stream x half transfer interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn htif0 ( & self ) -> Htif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif0R { bits } } # [ doc = "Bit 3 - Stream x transfer error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn teif0 ( & self ) -> Teif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif0R { bits } } # [ doc = "Bit 2 - Stream x direct mode error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn dmeif0 ( & self ) -> Dmeif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif0R { bits } } # [ doc = "Bit 0 - Stream x FIFO error interrupt flag (x=3..0)" ] # [ inline ( always ) ] pub fn feif0 ( & self ) -> Feif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif0R { bits } } } } # [ doc = "high interrupt status register" ] pub struct Hisr { register : VolatileCell < u32 > } # [ doc = "high interrupt status register" ] pub mod hisr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Hisr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Tcif7R { bits : u8 , } impl Tcif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif7R { bits : u8 , } impl Htif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif7R { bits : u8 , } impl Teif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif7R { bits : u8 , } impl Dmeif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif7R { bits : u8 , } impl Feif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif6R { bits : u8 , } impl Tcif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif6R { bits : u8 , } impl Htif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif6R { bits : u8 , } impl Teif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif6R { bits : u8 , } impl Dmeif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif6R { bits : u8 , } impl Feif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif5R { bits : u8 , } impl Tcif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif5R { bits : u8 , } impl Htif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif5R { bits : u8 , } impl Teif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif5R { bits : u8 , } impl Dmeif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif5R { bits : u8 , } impl Feif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tcif4R { bits : u8 , } impl Tcif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Htif4R { bits : u8 , } impl Htif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Teif4R { bits : u8 , } impl Teif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmeif4R { bits : u8 , } impl Dmeif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Feif4R { bits : u8 , } impl Feif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - Stream x transfer complete interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn tcif7 ( & self ) -> Tcif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif7R { bits } } # [ doc = "Bit 26 - Stream x half transfer interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn htif7 ( & self ) -> Htif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif7R { bits } } # [ doc = "Bit 25 - Stream x transfer error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn teif7 ( & self ) -> Teif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif7R { bits } } # [ doc = "Bit 24 - Stream x direct mode error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn dmeif7 ( & self ) -> Dmeif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif7R { bits } } # [ doc = "Bit 22 - Stream x FIFO error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn feif7 ( & self ) -> Feif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif7R { bits } } # [ doc = "Bit 21 - Stream x transfer complete interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn tcif6 ( & self ) -> Tcif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif6R { bits } } # [ doc = "Bit 20 - Stream x half transfer interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn htif6 ( & self ) -> Htif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif6R { bits } } # [ doc = "Bit 19 - Stream x transfer error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn teif6 ( & self ) -> Teif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif6R { bits } } # [ doc = "Bit 18 - Stream x direct mode error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn dmeif6 ( & self ) -> Dmeif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif6R { bits } } # [ doc = "Bit 16 - Stream x FIFO error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn feif6 ( & self ) -> Feif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif6R { bits } } # [ doc = "Bit 11 - Stream x transfer complete interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn tcif5 ( & self ) -> Tcif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif5R { bits } } # [ doc = "Bit 10 - Stream x half transfer interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn htif5 ( & self ) -> Htif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif5R { bits } } # [ doc = "Bit 9 - Stream x transfer error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn teif5 ( & self ) -> Teif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif5R { bits } } # [ doc = "Bit 8 - Stream x direct mode error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn dmeif5 ( & self ) -> Dmeif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif5R { bits } } # [ doc = "Bit 6 - Stream x FIFO error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn feif5 ( & self ) -> Feif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif5R { bits } } # [ doc = "Bit 5 - Stream x transfer complete interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn tcif4 ( & self ) -> Tcif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tcif4R { bits } } # [ doc = "Bit 4 - Stream x half transfer interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn htif4 ( & self ) -> Htif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Htif4R { bits } } # [ doc = "Bit 3 - Stream x transfer error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn teif4 ( & self ) -> Teif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Teif4R { bits } } # [ doc = "Bit 2 - Stream x direct mode error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn dmeif4 ( & self ) -> Dmeif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmeif4R { bits } } # [ doc = "Bit 0 - Stream x FIFO error interrupt flag (x=7..4)" ] # [ inline ( always ) ] pub fn feif4 ( & self ) -> Feif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Feif4R { bits } } } } # [ doc = "low interrupt flag clear register" ] pub struct Lifcr { register : VolatileCell < u32 > } # [ doc = "low interrupt flag clear register" ] pub mod lifcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Lifcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ctcif3R { bits : u8 , } impl Ctcif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif3R { bits : u8 , } impl Chtif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif3R { bits : u8 , } impl Cteif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif3R { bits : u8 , } impl Cdmeif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif3R { bits : u8 , } impl Cfeif3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif2R { bits : u8 , } impl Ctcif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif2R { bits : u8 , } impl Chtif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif2R { bits : u8 , } impl Cteif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif2R { bits : u8 , } impl Cdmeif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif2R { bits : u8 , } impl Cfeif2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif1R { bits : u8 , } impl Ctcif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif1R { bits : u8 , } impl Chtif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif1R { bits : u8 , } impl Cteif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif1R { bits : u8 , } impl Cdmeif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif1R { bits : u8 , } impl Cfeif1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif0R { bits : u8 , } impl Ctcif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif0R { bits : u8 , } impl Chtif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif0R { bits : u8 , } impl Cteif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif0R { bits : u8 , } impl Cdmeif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif0R { bits : u8 , } impl Cfeif0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ctcif3W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif3W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif3W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif3W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif3W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif2W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif2W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif2W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif2W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif2W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif1W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif1W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif1W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif1W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif1W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif0W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif0W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif0W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif0W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif0W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif3 ( & self ) -> Ctcif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif3R { bits } } # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif3 ( & self ) -> Chtif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif3R { bits } } # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif3 ( & self ) -> Cteif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif3R { bits } } # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif3 ( & self ) -> Cdmeif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif3R { bits } } # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif3 ( & self ) -> Cfeif3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif3R { bits } } # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif2 ( & self ) -> Ctcif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif2R { bits } } # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif2 ( & self ) -> Chtif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif2R { bits } } # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif2 ( & self ) -> Cteif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif2R { bits } } # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif2 ( & self ) -> Cdmeif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif2R { bits } } # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif2 ( & self ) -> Cfeif2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif2R { bits } } # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif1 ( & self ) -> Ctcif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif1R { bits } } # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif1 ( & self ) -> Chtif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif1R { bits } } # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif1 ( & self ) -> Cteif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif1R { bits } } # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif1 ( & self ) -> Cdmeif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif1R { bits } } # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif1 ( & self ) -> Cfeif1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif1R { bits } } # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif0 ( & self ) -> Ctcif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif0R { bits } } # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif0 ( & self ) -> Chtif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif0R { bits } } # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif0 ( & self ) -> Cteif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif0R { bits } } # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif0 ( & self ) -> Cdmeif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif0R { bits } } # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif0 ( & self ) -> Cfeif0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif3 ( & mut self ) -> _Ctcif3W { _Ctcif3W { w : self } } # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif3 ( & mut self ) -> _Chtif3W { _Chtif3W { w : self } } # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif3 ( & mut self ) -> _Cteif3W { _Cteif3W { w : self } } # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif3 ( & mut self ) -> _Cdmeif3W { _Cdmeif3W { w : self } } # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif3 ( & mut self ) -> _Cfeif3W { _Cfeif3W { w : self } } # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif2 ( & mut self ) -> _Ctcif2W { _Ctcif2W { w : self } } # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif2 ( & mut self ) -> _Chtif2W { _Chtif2W { w : self } } # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif2 ( & mut self ) -> _Cteif2W { _Cteif2W { w : self } } # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif2 ( & mut self ) -> _Cdmeif2W { _Cdmeif2W { w : self } } # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif2 ( & mut self ) -> _Cfeif2W { _Cfeif2W { w : self } } # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif1 ( & mut self ) -> _Ctcif1W { _Ctcif1W { w : self } } # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif1 ( & mut self ) -> _Chtif1W { _Chtif1W { w : self } } # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif1 ( & mut self ) -> _Cteif1W { _Cteif1W { w : self } } # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif1 ( & mut self ) -> _Cdmeif1W { _Cdmeif1W { w : self } } # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif1 ( & mut self ) -> _Cfeif1W { _Cfeif1W { w : self } } # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn ctcif0 ( & mut self ) -> _Ctcif0W { _Ctcif0W { w : self } } # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn chtif0 ( & mut self ) -> _Chtif0W { _Chtif0W { w : self } } # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cteif0 ( & mut self ) -> _Cteif0W { _Cteif0W { w : self } } # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cdmeif0 ( & mut self ) -> _Cdmeif0W { _Cdmeif0W { w : self } } # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 3..0)" ] # [ inline ( always ) ] pub fn cfeif0 ( & mut self ) -> _Cfeif0W { _Cfeif0W { w : self } } } } # [ doc = "high interrupt flag clear register" ] pub struct Hifcr { register : VolatileCell < u32 > } # [ doc = "high interrupt flag clear register" ] pub mod hifcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Hifcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ctcif7R { bits : u8 , } impl Ctcif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif7R { bits : u8 , } impl Chtif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif7R { bits : u8 , } impl Cteif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif7R { bits : u8 , } impl Cdmeif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif7R { bits : u8 , } impl Cfeif7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif6R { bits : u8 , } impl Ctcif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif6R { bits : u8 , } impl Chtif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif6R { bits : u8 , } impl Cteif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif6R { bits : u8 , } impl Cdmeif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif6R { bits : u8 , } impl Cfeif6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif5R { bits : u8 , } impl Ctcif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif5R { bits : u8 , } impl Chtif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif5R { bits : u8 , } impl Cteif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif5R { bits : u8 , } impl Cdmeif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif5R { bits : u8 , } impl Cfeif5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ctcif4R { bits : u8 , } impl Ctcif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Chtif4R { bits : u8 , } impl Chtif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cteif4R { bits : u8 , } impl Cteif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cdmeif4R { bits : u8 , } impl Cdmeif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cfeif4R { bits : u8 , } impl Cfeif4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ctcif7W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif7W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif7W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif7W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif7W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif6W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif6W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif6W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif6W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif6W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif5W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif5W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif5W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif5W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif5W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ctcif4W < 'a > { w : & 'a mut W , } impl < 'a > _Ctcif4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Chtif4W < 'a > { w : & 'a mut W , } impl < 'a > _Chtif4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cteif4W < 'a > { w : & 'a mut W , } impl < 'a > _Cteif4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cdmeif4W < 'a > { w : & 'a mut W , } impl < 'a > _Cdmeif4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cfeif4W < 'a > { w : & 'a mut W , } impl < 'a > _Cfeif4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif7 ( & self ) -> Ctcif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif7R { bits } } # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif7 ( & self ) -> Chtif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif7R { bits } } # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif7 ( & self ) -> Cteif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif7R { bits } } # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif7 ( & self ) -> Cdmeif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif7R { bits } } # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif7 ( & self ) -> Cfeif7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif7R { bits } } # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif6 ( & self ) -> Ctcif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif6R { bits } } # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif6 ( & self ) -> Chtif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif6R { bits } } # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif6 ( & self ) -> Cteif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif6R { bits } } # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif6 ( & self ) -> Cdmeif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif6R { bits } } # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif6 ( & self ) -> Cfeif6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif6R { bits } } # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif5 ( & self ) -> Ctcif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif5R { bits } } # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif5 ( & self ) -> Chtif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif5R { bits } } # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif5 ( & self ) -> Cteif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif5R { bits } } # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif5 ( & self ) -> Cdmeif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif5R { bits } } # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif5 ( & self ) -> Cfeif5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif5R { bits } } # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif4 ( & self ) -> Ctcif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ctcif4R { bits } } # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif4 ( & self ) -> Chtif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Chtif4R { bits } } # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif4 ( & self ) -> Cteif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cteif4R { bits } } # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif4 ( & self ) -> Cdmeif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cdmeif4R { bits } } # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif4 ( & self ) -> Cfeif4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cfeif4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif7 ( & mut self ) -> _Ctcif7W { _Ctcif7W { w : self } } # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif7 ( & mut self ) -> _Chtif7W { _Chtif7W { w : self } } # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif7 ( & mut self ) -> _Cteif7W { _Cteif7W { w : self } } # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif7 ( & mut self ) -> _Cdmeif7W { _Cdmeif7W { w : self } } # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif7 ( & mut self ) -> _Cfeif7W { _Cfeif7W { w : self } } # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif6 ( & mut self ) -> _Ctcif6W { _Ctcif6W { w : self } } # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif6 ( & mut self ) -> _Chtif6W { _Chtif6W { w : self } } # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif6 ( & mut self ) -> _Cteif6W { _Cteif6W { w : self } } # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif6 ( & mut self ) -> _Cdmeif6W { _Cdmeif6W { w : self } } # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif6 ( & mut self ) -> _Cfeif6W { _Cfeif6W { w : self } } # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif5 ( & mut self ) -> _Ctcif5W { _Ctcif5W { w : self } } # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif5 ( & mut self ) -> _Chtif5W { _Chtif5W { w : self } } # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif5 ( & mut self ) -> _Cteif5W { _Cteif5W { w : self } } # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif5 ( & mut self ) -> _Cdmeif5W { _Cdmeif5W { w : self } } # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif5 ( & mut self ) -> _Cfeif5W { _Cfeif5W { w : self } } # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn ctcif4 ( & mut self ) -> _Ctcif4W { _Ctcif4W { w : self } } # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn chtif4 ( & mut self ) -> _Chtif4W { _Chtif4W { w : self } } # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cteif4 ( & mut self ) -> _Cteif4W { _Cteif4W { w : self } } # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cdmeif4 ( & mut self ) -> _Cdmeif4W { _Cdmeif4W { w : self } } # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 7..4)" ] # [ inline ( always ) ] pub fn cfeif4 ( & mut self ) -> _Cfeif4W { _Cfeif4W { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S0cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s0cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S0ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s0ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S0par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s0par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S0m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s0m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S0m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s0m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S0fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s0fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S0fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S1cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s1cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S1ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s1ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S1par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s1par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S1m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s1m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S1m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s1m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S1fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s1fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S1fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S2cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s2cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S2ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s2ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S2par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s2par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S2m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s2m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S2m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s2m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S2fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s2fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S2fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S3cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s3cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S3ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s3ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S3par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s3par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S3m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s3m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S3m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s3m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S3fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s3fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S3fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S4cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s4cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S4ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s4ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S4par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s4par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S4m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s4m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S4m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s4m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S4fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s4fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S4fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S5cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s5cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S5ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s5ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S5par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s5par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S5m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s5m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S5m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s5m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S5fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s5fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S5fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S6cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s6cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S6ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s6ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S6par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s6par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S6m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s6m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S6m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s6m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S6fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s6fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S6fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } # [ doc = "stream x configuration register" ] pub struct S7cr { register : VolatileCell < u32 > } # [ doc = "stream x configuration register" ] pub mod s7cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ChselR { bits : u8 , } impl ChselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MburstR { bits : u8 , } impl MburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PburstR { bits : u8 , } impl PburstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtR { bits : u8 , } impl CtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbmR { bits : u8 , } impl DbmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlR { bits : u8 , } impl PlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincosR { bits : u8 , } impl PincosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsizeR { bits : u8 , } impl MsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MincR { bits : u8 , } impl MincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PincR { bits : u8 , } impl PincR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CircR { bits : u8 , } impl CircR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfctrlR { bits : u8 , } impl PfctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtieR { bits : u8 , } impl HtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeieR { bits : u8 , } impl TeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmeieR { bits : u8 , } impl DmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnR { bits : u8 , } impl EnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ChselW < 'a > { w : & 'a mut W , } impl < 'a > _ChselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MburstW < 'a > { w : & 'a mut W , } impl < 'a > _MburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PburstW < 'a > { w : & 'a mut W , } impl < 'a > _PburstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtW < 'a > { w : & 'a mut W , } impl < 'a > _CtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbmW < 'a > { w : & 'a mut W , } impl < 'a > _DbmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlW < 'a > { w : & 'a mut W , } impl < 'a > _PlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincosW < 'a > { w : & 'a mut W , } impl < 'a > _PincosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsizeW < 'a > { w : & 'a mut W , } impl < 'a > _MsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MincW < 'a > { w : & 'a mut W , } impl < 'a > _MincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PincW < 'a > { w : & 'a mut W , } impl < 'a > _PincW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CircW < 'a > { w : & 'a mut W , } impl < 'a > _CircW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PfctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtieW < 'a > { w : & 'a mut W , } impl < 'a > _HtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeieW < 'a > { w : & 'a mut W , } impl < 'a > _TeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmeieW < 'a > { w : & 'a mut W , } impl < 'a > _DmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnW < 'a > { w : & 'a mut W , } impl < 'a > _EnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & self ) -> ChselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChselR { bits } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & self ) -> MburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MburstR { bits } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & self ) -> PburstR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PburstR { bits } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & self ) -> CtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtR { bits } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & self ) -> DbmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbmR { bits } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & self ) -> PlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlR { bits } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & self ) -> PincosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincosR { bits } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & self ) -> MsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsizeR { bits } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & self ) -> MincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MincR { bits } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & self ) -> PincR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PincR { bits } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & self ) -> CircR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CircR { bits } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & self ) -> PfctrlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfctrlR { bits } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & self ) -> HtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtieR { bits } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & self ) -> TeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeieR { bits } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & self ) -> DmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmeieR { bits } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & self ) -> EnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:27 - Channel selection" ] # [ inline ( always ) ] pub fn chsel ( & mut self ) -> _ChselW { _ChselW { w : self } } # [ doc = "Bits 23:24 - Memory burst transfer configuration" ] # [ inline ( always ) ] pub fn mburst ( & mut self ) -> _MburstW { _MburstW { w : self } } # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ] # [ inline ( always ) ] pub fn pburst ( & mut self ) -> _PburstW { _PburstW { w : self } } # [ doc = "Bit 20 - ACK" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 19 - Current target (only in double buffer mode)" ] # [ inline ( always ) ] pub fn ct ( & mut self ) -> _CtW { _CtW { w : self } } # [ doc = "Bit 18 - Double buffer mode" ] # [ inline ( always ) ] pub fn dbm ( & mut self ) -> _DbmW { _DbmW { w : self } } # [ doc = "Bits 16:17 - Priority level" ] # [ inline ( always ) ] pub fn pl ( & mut self ) -> _PlW { _PlW { w : self } } # [ doc = "Bit 15 - Peripheral increment offset size" ] # [ inline ( always ) ] pub fn pincos ( & mut self ) -> _PincosW { _PincosW { w : self } } # [ doc = "Bits 13:14 - Memory data size" ] # [ inline ( always ) ] pub fn msize ( & mut self ) -> _MsizeW { _MsizeW { w : self } } # [ doc = "Bits 11:12 - Peripheral data size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 10 - Memory increment mode" ] # [ inline ( always ) ] pub fn minc ( & mut self ) -> _MincW { _MincW { w : self } } # [ doc = "Bit 9 - Peripheral increment mode" ] # [ inline ( always ) ] pub fn pinc ( & mut self ) -> _PincW { _PincW { w : self } } # [ doc = "Bit 8 - Circular mode" ] # [ inline ( always ) ] pub fn circ ( & mut self ) -> _CircW { _CircW { w : self } } # [ doc = "Bits 6:7 - Data transfer direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 5 - Peripheral flow controller" ] # [ inline ( always ) ] pub fn pfctrl ( & mut self ) -> _PfctrlW { _PfctrlW { w : self } } # [ doc = "Bit 4 - Transfer complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 3 - Half transfer interrupt enable" ] # [ inline ( always ) ] pub fn htie ( & mut self ) -> _HtieW { _HtieW { w : self } } # [ doc = "Bit 2 - Transfer error interrupt enable" ] # [ inline ( always ) ] pub fn teie ( & mut self ) -> _TeieW { _TeieW { w : self } } # [ doc = "Bit 1 - Direct mode error interrupt enable" ] # [ inline ( always ) ] pub fn dmeie ( & mut self ) -> _DmeieW { _DmeieW { w : self } } # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ] # [ inline ( always ) ] pub fn en ( & mut self ) -> _EnW { _EnW { w : self } } } } # [ doc = "stream x number of data register" ] pub struct S7ndtr { register : VolatileCell < u32 > } # [ doc = "stream x number of data register" ] pub mod s7ndtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7ndtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NdtR { bits : u16 , } impl NdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NdtW < 'a > { w : & 'a mut W , } impl < 'a > _NdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & self ) -> NdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Number of data items to transfer" ] # [ inline ( always ) ] pub fn ndt ( & mut self ) -> _NdtW { _NdtW { w : self } } } } # [ doc = "stream x peripheral address register" ] pub struct S7par { register : VolatileCell < u32 > } # [ doc = "stream x peripheral address register" ] pub mod s7par { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7par { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u32 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Peripheral address" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "stream x memory 0 address register" ] pub struct S7m0ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 0 address register" ] pub mod s7m0ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7m0ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M0aR { bits : u32 , } impl M0aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M0aW < 'a > { w : & 'a mut W , } impl < 'a > _M0aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & self ) -> M0aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M0aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 0 address" ] # [ inline ( always ) ] pub fn m0a ( & mut self ) -> _M0aW { _M0aW { w : self } } } } # [ doc = "stream x memory 1 address register" ] pub struct S7m1ar { register : VolatileCell < u32 > } # [ doc = "stream x memory 1 address register" ] pub mod s7m1ar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7m1ar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct M1aR { bits : u32 , } impl M1aR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _M1aW < 'a > { w : & 'a mut W , } impl < 'a > _M1aW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & self ) -> M1aR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; M1aR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ] # [ inline ( always ) ] pub fn m1a ( & mut self ) -> _M1aW { _M1aW { w : self } } } } # [ doc = "stream x FIFO control register" ] pub struct S7fcr { register : VolatileCell < u32 > } # [ doc = "stream x FIFO control register" ] pub mod s7fcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: S7fcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FeieR { bits : u8 , } impl FeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsR { bits : u8 , } impl FsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmdisR { bits : u8 , } impl DmdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FthR { bits : u8 , } impl FthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FeieW < 'a > { w : & 'a mut W , } impl < 'a > _FeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmdisW < 'a > { w : & 'a mut W , } impl < 'a > _DmdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FthW < 'a > { w : & 'a mut W , } impl < 'a > _FthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & self ) -> FeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeieR { bits } } # [ doc = "Bits 3:5 - FIFO status" ] # [ inline ( always ) ] pub fn fs ( & self ) -> FsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsR { bits } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & self ) -> DmdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmdisR { bits } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & self ) -> FthR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - FIFO error interrupt enable" ] # [ inline ( always ) ] pub fn feie ( & mut self ) -> _FeieW { _FeieW { w : self } } # [ doc = "Bit 2 - Direct mode disable" ] # [ inline ( always ) ] pub fn dmdis ( & mut self ) -> _DmdisW { _DmdisW { w : self } } # [ doc = "Bits 0:1 - FIFO threshold selection" ] # [ inline ( always ) ] pub fn fth ( & mut self ) -> _FthW { _FthW { w : self } } } } } # [ doc = "DMA controller" ] pub struct Dma2 { register_block : dma2 :: RegisterBlock } impl Deref for Dma2 { type Target = dma2 :: RegisterBlock ; fn deref ( & self ) -> & dma2 :: RegisterBlock { & self . register_block } } # [ doc = "DMA1" ] pub const DMA1 : Peripheral < Dma1 > = unsafe { Peripheral :: new ( 1073897472 ) } ; # [ doc = r" Register block" ] pub struct Dma1 { register_block : dma2 :: RegisterBlock } impl Deref for Dma1 { type Target = dma2 :: RegisterBlock ; fn deref ( & self ) -> & dma2 :: RegisterBlock { & self . register_block } } # [ doc = "Reset and clock control" ] pub const RCC : Peripheral < Rcc > = unsafe { Peripheral :: new ( 1073887232 ) } ; # [ doc = "Reset and clock control" ] pub mod rcc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - clock control register" ] pub cr : Cr , # [ doc = "0x04 - PLL configuration register" ] pub pllcfgr : Pllcfgr , # [ doc = "0x08 - clock configuration register" ] pub cfgr : Cfgr , # [ doc = "0x0c - clock interrupt register" ] pub cir : Cir , # [ doc = "0x10 - AHB1 peripheral reset register" ] pub ahb1rstr : Ahb1rstr , # [ doc = "0x14 - AHB2 peripheral reset register" ] pub ahb2rstr : Ahb2rstr , # [ doc = "0x18 - AHB3 peripheral reset register" ] pub ahb3rstr : Ahb3rstr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x20 - APB1 peripheral reset register" ] pub apb1rstr : Apb1rstr , # [ doc = "0x24 - APB2 peripheral reset register" ] pub apb2rstr : Apb2rstr , _reserved1 : [ u8 ; 8usize ] , # [ doc = "0x30 - AHB1 peripheral clock register" ] pub ahb1enr : Ahb1enr , # [ doc = "0x34 - AHB2 peripheral clock enable register" ] pub ahb2enr : Ahb2enr , # [ doc = "0x38 - AHB3 peripheral clock enable register" ] pub ahb3enr : Ahb3enr , _reserved2 : [ u8 ; 4usize ] , # [ doc = "0x40 - APB1 peripheral clock enable register" ] pub apb1enr : Apb1enr , # [ doc = "0x44 - APB2 peripheral clock enable register" ] pub apb2enr : Apb2enr , _reserved3 : [ u8 ; 8usize ] , # [ doc = "0x50 - AHB1 peripheral clock enable in low power mode register" ] pub ahb1lpenr : Ahb1lpenr , # [ doc = "0x54 - AHB2 peripheral clock enable in low power mode register" ] pub ahb2lpenr : Ahb2lpenr , # [ doc = "0x58 - AHB3 peripheral clock enable in low power mode register" ] pub ahb3lpenr : Ahb3lpenr , _reserved4 : [ u8 ; 4usize ] , # [ doc = "0x60 - APB1 peripheral clock enable in low power mode register" ] pub apb1lpenr : Apb1lpenr , # [ doc = "0x64 - APB2 peripheral clock enabled in low power mode register" ] pub apb2lpenr : Apb2lpenr , _reserved5 : [ u8 ; 8usize ] , # [ doc = "0x70 - Backup domain control register" ] pub bdcr : Bdcr , # [ doc = "0x74 - clock control & status register" ] pub csr : Csr , _reserved6 : [ u8 ; 8usize ] , # [ doc = "0x80 - spread spectrum clock generation register" ] pub sscgr : Sscgr , # [ doc = "0x84 - PLLI2S configuration register" ] pub plli2scfgr : Plli2scfgr , } # [ doc = "clock control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "clock control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Plli2srdyR { bits : u8 , } impl Plli2srdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plli2sonR { bits : u8 , } impl Plli2sonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PllrdyR { bits : u8 , } impl PllrdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PllonR { bits : u8 , } impl PllonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CssonR { bits : u8 , } impl CssonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsebypR { bits : u8 , } impl HsebypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HserdyR { bits : u8 , } impl HserdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HseonR { bits : u8 , } impl HseonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsicalR { bits : u8 , } impl HsicalR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsitrimR { bits : u8 , } impl HsitrimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsirdyR { bits : u8 , } impl HsirdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsionR { bits : u8 , } impl HsionR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Plli2sonW < 'a > { w : & 'a mut W , } impl < 'a > _Plli2sonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PllonW < 'a > { w : & 'a mut W , } impl < 'a > _PllonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CssonW < 'a > { w : & 'a mut W , } impl < 'a > _CssonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsebypW < 'a > { w : & 'a mut W , } impl < 'a > _HsebypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HseonW < 'a > { w : & 'a mut W , } impl < 'a > _HseonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsitrimW < 'a > { w : & 'a mut W , } impl < 'a > _HsitrimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsionW < 'a > { w : & 'a mut W , } impl < 'a > _HsionW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - PLLI2S clock ready flag" ] # [ inline ( always ) ] pub fn plli2srdy ( & self ) -> Plli2srdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plli2srdyR { bits } } # [ doc = "Bit 26 - PLLI2S enable" ] # [ inline ( always ) ] pub fn plli2son ( & self ) -> Plli2sonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plli2sonR { bits } } # [ doc = "Bit 25 - Main PLL (PLL) clock ready flag" ] # [ inline ( always ) ] pub fn pllrdy ( & self ) -> PllrdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PllrdyR { bits } } # [ doc = "Bit 24 - Main PLL (PLL) enable" ] # [ inline ( always ) ] pub fn pllon ( & self ) -> PllonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PllonR { bits } } # [ doc = "Bit 19 - Clock security system enable" ] # [ inline ( always ) ] pub fn csson ( & self ) -> CssonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CssonR { bits } } # [ doc = "Bit 18 - HSE clock bypass" ] # [ inline ( always ) ] pub fn hsebyp ( & self ) -> HsebypR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsebypR { bits } } # [ doc = "Bit 17 - HSE clock ready flag" ] # [ inline ( always ) ] pub fn hserdy ( & self ) -> HserdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HserdyR { bits } } # [ doc = "Bit 16 - HSE clock enable" ] # [ inline ( always ) ] pub fn hseon ( & self ) -> HseonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HseonR { bits } } # [ doc = "Bits 8:15 - Internal high-speed clock calibration" ] # [ inline ( always ) ] pub fn hsical ( & self ) -> HsicalR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsicalR { bits } } # [ doc = "Bits 3:7 - Internal high-speed clock trimming" ] # [ inline ( always ) ] pub fn hsitrim ( & self ) -> HsitrimR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsitrimR { bits } } # [ doc = "Bit 1 - Internal high-speed clock ready flag" ] # [ inline ( always ) ] pub fn hsirdy ( & self ) -> HsirdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsirdyR { bits } } # [ doc = "Bit 0 - Internal high-speed clock enable" ] # [ inline ( always ) ] pub fn hsion ( & self ) -> HsionR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsionR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 131 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 26 - PLLI2S enable" ] # [ inline ( always ) ] pub fn plli2son ( & mut self ) -> _Plli2sonW { _Plli2sonW { w : self } } # [ doc = "Bit 24 - Main PLL (PLL) enable" ] # [ inline ( always ) ] pub fn pllon ( & mut self ) -> _PllonW { _PllonW { w : self } } # [ doc = "Bit 19 - Clock security system enable" ] # [ inline ( always ) ] pub fn csson ( & mut self ) -> _CssonW { _CssonW { w : self } } # [ doc = "Bit 18 - HSE clock bypass" ] # [ inline ( always ) ] pub fn hsebyp ( & mut self ) -> _HsebypW { _HsebypW { w : self } } # [ doc = "Bit 16 - HSE clock enable" ] # [ inline ( always ) ] pub fn hseon ( & mut self ) -> _HseonW { _HseonW { w : self } } # [ doc = "Bits 3:7 - Internal high-speed clock trimming" ] # [ inline ( always ) ] pub fn hsitrim ( & mut self ) -> _HsitrimW { _HsitrimW { w : self } } # [ doc = "Bit 0 - Internal high-speed clock enable" ] # [ inline ( always ) ] pub fn hsion ( & mut self ) -> _HsionW { _HsionW { w : self } } } } # [ doc = "PLL configuration register" ] pub struct Pllcfgr { register : VolatileCell < u32 > } # [ doc = "PLL configuration register" ] pub mod pllcfgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pllcfgr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Pllq3R { bits : u8 , } impl Pllq3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllq2R { bits : u8 , } impl Pllq2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllq1R { bits : u8 , } impl Pllq1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllq0R { bits : u8 , } impl Pllq0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PllsrcR { bits : u8 , } impl PllsrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllp1R { bits : u8 , } impl Pllp1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllp0R { bits : u8 , } impl Pllp0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln8R { bits : u8 , } impl Plln8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln7R { bits : u8 , } impl Plln7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln6R { bits : u8 , } impl Plln6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln5R { bits : u8 , } impl Plln5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln4R { bits : u8 , } impl Plln4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln3R { bits : u8 , } impl Plln3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln2R { bits : u8 , } impl Plln2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln1R { bits : u8 , } impl Plln1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plln0R { bits : u8 , } impl Plln0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm5R { bits : u8 , } impl Pllm5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm4R { bits : u8 , } impl Pllm4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm3R { bits : u8 , } impl Pllm3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm2R { bits : u8 , } impl Pllm2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm1R { bits : u8 , } impl Pllm1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pllm0R { bits : u8 , } impl Pllm0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Pllq3W < 'a > { w : & 'a mut W , } impl < 'a > _Pllq3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllq2W < 'a > { w : & 'a mut W , } impl < 'a > _Pllq2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllq1W < 'a > { w : & 'a mut W , } impl < 'a > _Pllq1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllq0W < 'a > { w : & 'a mut W , } impl < 'a > _Pllq0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PllsrcW < 'a > { w : & 'a mut W , } impl < 'a > _PllsrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllp1W < 'a > { w : & 'a mut W , } impl < 'a > _Pllp1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllp0W < 'a > { w : & 'a mut W , } impl < 'a > _Pllp0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln8W < 'a > { w : & 'a mut W , } impl < 'a > _Plln8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln7W < 'a > { w : & 'a mut W , } impl < 'a > _Plln7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln6W < 'a > { w : & 'a mut W , } impl < 'a > _Plln6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln5W < 'a > { w : & 'a mut W , } impl < 'a > _Plln5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln4W < 'a > { w : & 'a mut W , } impl < 'a > _Plln4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln3W < 'a > { w : & 'a mut W , } impl < 'a > _Plln3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln2W < 'a > { w : & 'a mut W , } impl < 'a > _Plln2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln1W < 'a > { w : & 'a mut W , } impl < 'a > _Plln1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plln0W < 'a > { w : & 'a mut W , } impl < 'a > _Plln0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm5W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm4W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm3W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm2W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm1W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pllm0W < 'a > { w : & 'a mut W , } impl < 'a > _Pllm0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 27 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq3 ( & self ) -> Pllq3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllq3R { bits } } # [ doc = "Bit 26 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq2 ( & self ) -> Pllq2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllq2R { bits } } # [ doc = "Bit 25 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq1 ( & self ) -> Pllq1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllq1R { bits } } # [ doc = "Bit 24 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq0 ( & self ) -> Pllq0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllq0R { bits } } # [ doc = "Bit 22 - Main PLL(PLL) and audio PLL (PLLI2S) entry clock source" ] # [ inline ( always ) ] pub fn pllsrc ( & self ) -> PllsrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PllsrcR { bits } } # [ doc = "Bit 17 - Main PLL (PLL) division factor for main system clock" ] # [ inline ( always ) ] pub fn pllp1 ( & self ) -> Pllp1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllp1R { bits } } # [ doc = "Bit 16 - Main PLL (PLL) division factor for main system clock" ] # [ inline ( always ) ] pub fn pllp0 ( & self ) -> Pllp0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllp0R { bits } } # [ doc = "Bit 14 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln8 ( & self ) -> Plln8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln8R { bits } } # [ doc = "Bit 13 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln7 ( & self ) -> Plln7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln7R { bits } } # [ doc = "Bit 12 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln6 ( & self ) -> Plln6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln6R { bits } } # [ doc = "Bit 11 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln5 ( & self ) -> Plln5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln5R { bits } } # [ doc = "Bit 10 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln4 ( & self ) -> Plln4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln4R { bits } } # [ doc = "Bit 9 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln3 ( & self ) -> Plln3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln3R { bits } } # [ doc = "Bit 8 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln2 ( & self ) -> Plln2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln2R { bits } } # [ doc = "Bit 7 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln1 ( & self ) -> Plln1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln1R { bits } } # [ doc = "Bit 6 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln0 ( & self ) -> Plln0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plln0R { bits } } # [ doc = "Bit 5 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm5 ( & self ) -> Pllm5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm5R { bits } } # [ doc = "Bit 4 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm4 ( & self ) -> Pllm4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm4R { bits } } # [ doc = "Bit 3 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm3 ( & self ) -> Pllm3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm3R { bits } } # [ doc = "Bit 2 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm2 ( & self ) -> Pllm2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm2R { bits } } # [ doc = "Bit 1 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm1 ( & self ) -> Pllm1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm1R { bits } } # [ doc = "Bit 0 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm0 ( & self ) -> Pllm0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pllm0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 603992080 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 27 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq3 ( & mut self ) -> _Pllq3W { _Pllq3W { w : self } } # [ doc = "Bit 26 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq2 ( & mut self ) -> _Pllq2W { _Pllq2W { w : self } } # [ doc = "Bit 25 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq1 ( & mut self ) -> _Pllq1W { _Pllq1W { w : self } } # [ doc = "Bit 24 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ] # [ inline ( always ) ] pub fn pllq0 ( & mut self ) -> _Pllq0W { _Pllq0W { w : self } } # [ doc = "Bit 22 - Main PLL(PLL) and audio PLL (PLLI2S) entry clock source" ] # [ inline ( always ) ] pub fn pllsrc ( & mut self ) -> _PllsrcW { _PllsrcW { w : self } } # [ doc = "Bit 17 - Main PLL (PLL) division factor for main system clock" ] # [ inline ( always ) ] pub fn pllp1 ( & mut self ) -> _Pllp1W { _Pllp1W { w : self } } # [ doc = "Bit 16 - Main PLL (PLL) division factor for main system clock" ] # [ inline ( always ) ] pub fn pllp0 ( & mut self ) -> _Pllp0W { _Pllp0W { w : self } } # [ doc = "Bit 14 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln8 ( & mut self ) -> _Plln8W { _Plln8W { w : self } } # [ doc = "Bit 13 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln7 ( & mut self ) -> _Plln7W { _Plln7W { w : self } } # [ doc = "Bit 12 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln6 ( & mut self ) -> _Plln6W { _Plln6W { w : self } } # [ doc = "Bit 11 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln5 ( & mut self ) -> _Plln5W { _Plln5W { w : self } } # [ doc = "Bit 10 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln4 ( & mut self ) -> _Plln4W { _Plln4W { w : self } } # [ doc = "Bit 9 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln3 ( & mut self ) -> _Plln3W { _Plln3W { w : self } } # [ doc = "Bit 8 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln2 ( & mut self ) -> _Plln2W { _Plln2W { w : self } } # [ doc = "Bit 7 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln1 ( & mut self ) -> _Plln1W { _Plln1W { w : self } } # [ doc = "Bit 6 - Main PLL (PLL) multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plln0 ( & mut self ) -> _Plln0W { _Plln0W { w : self } } # [ doc = "Bit 5 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm5 ( & mut self ) -> _Pllm5W { _Pllm5W { w : self } } # [ doc = "Bit 4 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm4 ( & mut self ) -> _Pllm4W { _Pllm4W { w : self } } # [ doc = "Bit 3 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm3 ( & mut self ) -> _Pllm3W { _Pllm3W { w : self } } # [ doc = "Bit 2 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm2 ( & mut self ) -> _Pllm2W { _Pllm2W { w : self } } # [ doc = "Bit 1 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm1 ( & mut self ) -> _Pllm1W { _Pllm1W { w : self } } # [ doc = "Bit 0 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ] # [ inline ( always ) ] pub fn pllm0 ( & mut self ) -> _Pllm0W { _Pllm0W { w : self } } } } # [ doc = "clock configuration register" ] pub struct Cfgr { register : VolatileCell < u32 > } # [ doc = "clock configuration register" ] pub mod cfgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cfgr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Mco2R { bits : u8 , } impl Mco2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mco2preR { bits : u8 , } impl Mco2preR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mco1preR { bits : u8 , } impl Mco1preR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2ssrcR { bits : u8 , } impl I2ssrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mco1R { bits : u8 , } impl Mco1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtcpreR { bits : u8 , } impl RtcpreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ppre2R { bits : u8 , } impl Ppre2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ppre1R { bits : u8 , } impl Ppre1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HpreR { bits : u8 , } impl HpreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sws1R { bits : u8 , } impl Sws1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sws0R { bits : u8 , } impl Sws0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sw1R { bits : u8 , } impl Sw1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sw0R { bits : u8 , } impl Sw0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Mco2W < 'a > { w : & 'a mut W , } impl < 'a > _Mco2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mco2preW < 'a > { w : & 'a mut W , } impl < 'a > _Mco2preW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mco1preW < 'a > { w : & 'a mut W , } impl < 'a > _Mco1preW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2ssrcW < 'a > { w : & 'a mut W , } impl < 'a > _I2ssrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mco1W < 'a > { w : & 'a mut W , } impl < 'a > _Mco1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtcpreW < 'a > { w : & 'a mut W , } impl < 'a > _RtcpreW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ppre2W < 'a > { w : & 'a mut W , } impl < 'a > _Ppre2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ppre1W < 'a > { w : & 'a mut W , } impl < 'a > _Ppre1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HpreW < 'a > { w : & 'a mut W , } impl < 'a > _HpreW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sw1W < 'a > { w : & 'a mut W , } impl < 'a > _Sw1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sw0W < 'a > { w : & 'a mut W , } impl < 'a > _Sw0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Microcontroller clock output 2" ] # [ inline ( always ) ] pub fn mco2 ( & self ) -> Mco2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mco2R { bits } } # [ doc = "Bits 27:29 - MCO2 prescaler" ] # [ inline ( always ) ] pub fn mco2pre ( & self ) -> Mco2preR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mco2preR { bits } } # [ doc = "Bits 24:26 - MCO1 prescaler" ] # [ inline ( always ) ] pub fn mco1pre ( & self ) -> Mco1preR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mco1preR { bits } } # [ doc = "Bit 23 - I2S clock selection" ] # [ inline ( always ) ] pub fn i2ssrc ( & self ) -> I2ssrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2ssrcR { bits } } # [ doc = "Bits 21:22 - Microcontroller clock output 1" ] # [ inline ( always ) ] pub fn mco1 ( & self ) -> Mco1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mco1R { bits } } # [ doc = "Bits 16:20 - HSE division factor for RTC clock" ] # [ inline ( always ) ] pub fn rtcpre ( & self ) -> RtcpreR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtcpreR { bits } } # [ doc = "Bits 13:15 - APB high-speed prescaler (APB2)" ] # [ inline ( always ) ] pub fn ppre2 ( & self ) -> Ppre2R { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ppre2R { bits } } # [ doc = "Bits 10:12 - APB Low speed prescaler (APB1)" ] # [ inline ( always ) ] pub fn ppre1 ( & self ) -> Ppre1R { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ppre1R { bits } } # [ doc = "Bits 4:7 - AHB prescaler" ] # [ inline ( always ) ] pub fn hpre ( & self ) -> HpreR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HpreR { bits } } # [ doc = "Bit 3 - System clock switch status" ] # [ inline ( always ) ] pub fn sws1 ( & self ) -> Sws1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sws1R { bits } } # [ doc = "Bit 2 - System clock switch status" ] # [ inline ( always ) ] pub fn sws0 ( & self ) -> Sws0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sws0R { bits } } # [ doc = "Bit 1 - System clock switch" ] # [ inline ( always ) ] pub fn sw1 ( & self ) -> Sw1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sw1R { bits } } # [ doc = "Bit 0 - System clock switch" ] # [ inline ( always ) ] pub fn sw0 ( & self ) -> Sw0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sw0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Microcontroller clock output 2" ] # [ inline ( always ) ] pub fn mco2 ( & mut self ) -> _Mco2W { _Mco2W { w : self } } # [ doc = "Bits 27:29 - MCO2 prescaler" ] # [ inline ( always ) ] pub fn mco2pre ( & mut self ) -> _Mco2preW { _Mco2preW { w : self } } # [ doc = "Bits 24:26 - MCO1 prescaler" ] # [ inline ( always ) ] pub fn mco1pre ( & mut self ) -> _Mco1preW { _Mco1preW { w : self } } # [ doc = "Bit 23 - I2S clock selection" ] # [ inline ( always ) ] pub fn i2ssrc ( & mut self ) -> _I2ssrcW { _I2ssrcW { w : self } } # [ doc = "Bits 21:22 - Microcontroller clock output 1" ] # [ inline ( always ) ] pub fn mco1 ( & mut self ) -> _Mco1W { _Mco1W { w : self } } # [ doc = "Bits 16:20 - HSE division factor for RTC clock" ] # [ inline ( always ) ] pub fn rtcpre ( & mut self ) -> _RtcpreW { _RtcpreW { w : self } } # [ doc = "Bits 13:15 - APB high-speed prescaler (APB2)" ] # [ inline ( always ) ] pub fn ppre2 ( & mut self ) -> _Ppre2W { _Ppre2W { w : self } } # [ doc = "Bits 10:12 - APB Low speed prescaler (APB1)" ] # [ inline ( always ) ] pub fn ppre1 ( & mut self ) -> _Ppre1W { _Ppre1W { w : self } } # [ doc = "Bits 4:7 - AHB prescaler" ] # [ inline ( always ) ] pub fn hpre ( & mut self ) -> _HpreW { _HpreW { w : self } } # [ doc = "Bit 1 - System clock switch" ] # [ inline ( always ) ] pub fn sw1 ( & mut self ) -> _Sw1W { _Sw1W { w : self } } # [ doc = "Bit 0 - System clock switch" ] # [ inline ( always ) ] pub fn sw0 ( & mut self ) -> _Sw0W { _Sw0W { w : self } } } } # [ doc = "clock interrupt register" ] pub struct Cir { register : VolatileCell < u32 > } # [ doc = "clock interrupt register" ] pub mod cir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cir { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Plli2srdyieR { bits : u8 , } impl Plli2srdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PllrdyieR { bits : u8 , } impl PllrdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HserdyieR { bits : u8 , } impl HserdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsirdyieR { bits : u8 , } impl HsirdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LserdyieR { bits : u8 , } impl LserdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsirdyieR { bits : u8 , } impl LsirdyieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CssfR { bits : u8 , } impl CssfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plli2srdyfR { bits : u8 , } impl Plli2srdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PllrdyfR { bits : u8 , } impl PllrdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HserdyfR { bits : u8 , } impl HserdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsirdyfR { bits : u8 , } impl HsirdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LserdyfR { bits : u8 , } impl LserdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsirdyfR { bits : u8 , } impl LsirdyfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CsscW < 'a > { w : & 'a mut W , } impl < 'a > _CsscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plli2srdycW < 'a > { w : & 'a mut W , } impl < 'a > _Plli2srdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PllrdycW < 'a > { w : & 'a mut W , } impl < 'a > _PllrdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HserdycW < 'a > { w : & 'a mut W , } impl < 'a > _HserdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsirdycW < 'a > { w : & 'a mut W , } impl < 'a > _HsirdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LserdycW < 'a > { w : & 'a mut W , } impl < 'a > _LserdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsirdycW < 'a > { w : & 'a mut W , } impl < 'a > _LsirdycW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plli2srdyieW < 'a > { w : & 'a mut W , } impl < 'a > _Plli2srdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PllrdyieW < 'a > { w : & 'a mut W , } impl < 'a > _PllrdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HserdyieW < 'a > { w : & 'a mut W , } impl < 'a > _HserdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsirdyieW < 'a > { w : & 'a mut W , } impl < 'a > _HsirdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LserdyieW < 'a > { w : & 'a mut W , } impl < 'a > _LserdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsirdyieW < 'a > { w : & 'a mut W , } impl < 'a > _LsirdyieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 13 - PLLI2S ready interrupt enable" ] # [ inline ( always ) ] pub fn plli2srdyie ( & self ) -> Plli2srdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plli2srdyieR { bits } } # [ doc = "Bit 12 - Main PLL (PLL) ready interrupt enable" ] # [ inline ( always ) ] pub fn pllrdyie ( & self ) -> PllrdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PllrdyieR { bits } } # [ doc = "Bit 11 - HSE ready interrupt enable" ] # [ inline ( always ) ] pub fn hserdyie ( & self ) -> HserdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HserdyieR { bits } } # [ doc = "Bit 10 - HSI ready interrupt enable" ] # [ inline ( always ) ] pub fn hsirdyie ( & self ) -> HsirdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsirdyieR { bits } } # [ doc = "Bit 9 - LSE ready interrupt enable" ] # [ inline ( always ) ] pub fn lserdyie ( & self ) -> LserdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LserdyieR { bits } } # [ doc = "Bit 8 - LSI ready interrupt enable" ] # [ inline ( always ) ] pub fn lsirdyie ( & self ) -> LsirdyieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsirdyieR { bits } } # [ doc = "Bit 7 - Clock security system interrupt flag" ] # [ inline ( always ) ] pub fn cssf ( & self ) -> CssfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CssfR { bits } } # [ doc = "Bit 5 - PLLI2S ready interrupt flag" ] # [ inline ( always ) ] pub fn plli2srdyf ( & self ) -> Plli2srdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plli2srdyfR { bits } } # [ doc = "Bit 4 - Main PLL (PLL) ready interrupt flag" ] # [ inline ( always ) ] pub fn pllrdyf ( & self ) -> PllrdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PllrdyfR { bits } } # [ doc = "Bit 3 - HSE ready interrupt flag" ] # [ inline ( always ) ] pub fn hserdyf ( & self ) -> HserdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HserdyfR { bits } } # [ doc = "Bit 2 - HSI ready interrupt flag" ] # [ inline ( always ) ] pub fn hsirdyf ( & self ) -> HsirdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsirdyfR { bits } } # [ doc = "Bit 1 - LSE ready interrupt flag" ] # [ inline ( always ) ] pub fn lserdyf ( & self ) -> LserdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LserdyfR { bits } } # [ doc = "Bit 0 - LSI ready interrupt flag" ] # [ inline ( always ) ] pub fn lsirdyf ( & self ) -> LsirdyfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsirdyfR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - Clock security system interrupt clear" ] # [ inline ( always ) ] pub fn cssc ( & mut self ) -> _CsscW { _CsscW { w : self } } # [ doc = "Bit 21 - PLLI2S ready interrupt clear" ] # [ inline ( always ) ] pub fn plli2srdyc ( & mut self ) -> _Plli2srdycW { _Plli2srdycW { w : self } } # [ doc = "Bit 20 - Main PLL(PLL) ready interrupt clear" ] # [ inline ( always ) ] pub fn pllrdyc ( & mut self ) -> _PllrdycW { _PllrdycW { w : self } } # [ doc = "Bit 19 - HSE ready interrupt clear" ] # [ inline ( always ) ] pub fn hserdyc ( & mut self ) -> _HserdycW { _HserdycW { w : self } } # [ doc = "Bit 18 - HSI ready interrupt clear" ] # [ inline ( always ) ] pub fn hsirdyc ( & mut self ) -> _HsirdycW { _HsirdycW { w : self } } # [ doc = "Bit 17 - LSE ready interrupt clear" ] # [ inline ( always ) ] pub fn lserdyc ( & mut self ) -> _LserdycW { _LserdycW { w : self } } # [ doc = "Bit 16 - LSI ready interrupt clear" ] # [ inline ( always ) ] pub fn lsirdyc ( & mut self ) -> _LsirdycW { _LsirdycW { w : self } } # [ doc = "Bit 13 - PLLI2S ready interrupt enable" ] # [ inline ( always ) ] pub fn plli2srdyie ( & mut self ) -> _Plli2srdyieW { _Plli2srdyieW { w : self } } # [ doc = "Bit 12 - Main PLL (PLL) ready interrupt enable" ] # [ inline ( always ) ] pub fn pllrdyie ( & mut self ) -> _PllrdyieW { _PllrdyieW { w : self } } # [ doc = "Bit 11 - HSE ready interrupt enable" ] # [ inline ( always ) ] pub fn hserdyie ( & mut self ) -> _HserdyieW { _HserdyieW { w : self } } # [ doc = "Bit 10 - HSI ready interrupt enable" ] # [ inline ( always ) ] pub fn hsirdyie ( & mut self ) -> _HsirdyieW { _HsirdyieW { w : self } } # [ doc = "Bit 9 - LSE ready interrupt enable" ] # [ inline ( always ) ] pub fn lserdyie ( & mut self ) -> _LserdyieW { _LserdyieW { w : self } } # [ doc = "Bit 8 - LSI ready interrupt enable" ] # [ inline ( always ) ] pub fn lsirdyie ( & mut self ) -> _LsirdyieW { _LsirdyieW { w : self } } } } # [ doc = "AHB1 peripheral reset register" ] pub struct Ahb1rstr { register : VolatileCell < u32 > } # [ doc = "AHB1 peripheral reset register" ] pub mod ahb1rstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb1rstr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtghsrstR { bits : u8 , } impl OtghsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacrstR { bits : u8 , } impl EthmacrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma2rstR { bits : u8 , } impl Dma2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma1rstR { bits : u8 , } impl Dma1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrcrstR { bits : u8 , } impl CrcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioirstR { bits : u8 , } impl GpioirstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiohrstR { bits : u8 , } impl GpiohrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiogrstR { bits : u8 , } impl GpiogrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiofrstR { bits : u8 , } impl GpiofrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioerstR { bits : u8 , } impl GpioerstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiodrstR { bits : u8 , } impl GpiodrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiocrstR { bits : u8 , } impl GpiocrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiobrstR { bits : u8 , } impl GpiobrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioarstR { bits : u8 , } impl GpioarstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OtghsrstW < 'a > { w : & 'a mut W , } impl < 'a > _OtghsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacrstW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma2rstW < 'a > { w : & 'a mut W , } impl < 'a > _Dma2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma1rstW < 'a > { w : & 'a mut W , } impl < 'a > _Dma1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrcrstW < 'a > { w : & 'a mut W , } impl < 'a > _CrcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioirstW < 'a > { w : & 'a mut W , } impl < 'a > _GpioirstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiohrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiohrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiogrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiogrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiofrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiofrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioerstW < 'a > { w : & 'a mut W , } impl < 'a > _GpioerstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiodrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiodrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiocrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiocrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiobrstW < 'a > { w : & 'a mut W , } impl < 'a > _GpiobrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioarstW < 'a > { w : & 'a mut W , } impl < 'a > _GpioarstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - USB OTG HS module reset" ] # [ inline ( always ) ] pub fn otghsrst ( & self ) -> OtghsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtghsrstR { bits } } # [ doc = "Bit 25 - Ethernet MAC reset" ] # [ inline ( always ) ] pub fn ethmacrst ( & self ) -> EthmacrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacrstR { bits } } # [ doc = "Bit 22 - DMA2 reset" ] # [ inline ( always ) ] pub fn dma2rst ( & self ) -> Dma2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma2rstR { bits } } # [ doc = "Bit 21 - DMA2 reset" ] # [ inline ( always ) ] pub fn dma1rst ( & self ) -> Dma1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma1rstR { bits } } # [ doc = "Bit 12 - CRC reset" ] # [ inline ( always ) ] pub fn crcrst ( & self ) -> CrcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrcrstR { bits } } # [ doc = "Bit 8 - IO port I reset" ] # [ inline ( always ) ] pub fn gpioirst ( & self ) -> GpioirstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioirstR { bits } } # [ doc = "Bit 7 - IO port H reset" ] # [ inline ( always ) ] pub fn gpiohrst ( & self ) -> GpiohrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiohrstR { bits } } # [ doc = "Bit 6 - IO port G reset" ] # [ inline ( always ) ] pub fn gpiogrst ( & self ) -> GpiogrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiogrstR { bits } } # [ doc = "Bit 5 - IO port F reset" ] # [ inline ( always ) ] pub fn gpiofrst ( & self ) -> GpiofrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiofrstR { bits } } # [ doc = "Bit 4 - IO port E reset" ] # [ inline ( always ) ] pub fn gpioerst ( & self ) -> GpioerstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioerstR { bits } } # [ doc = "Bit 3 - IO port D reset" ] # [ inline ( always ) ] pub fn gpiodrst ( & self ) -> GpiodrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiodrstR { bits } } # [ doc = "Bit 2 - IO port C reset" ] # [ inline ( always ) ] pub fn gpiocrst ( & self ) -> GpiocrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiocrstR { bits } } # [ doc = "Bit 1 - IO port B reset" ] # [ inline ( always ) ] pub fn gpiobrst ( & self ) -> GpiobrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiobrstR { bits } } # [ doc = "Bit 0 - IO port A reset" ] # [ inline ( always ) ] pub fn gpioarst ( & self ) -> GpioarstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioarstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - USB OTG HS module reset" ] # [ inline ( always ) ] pub fn otghsrst ( & mut self ) -> _OtghsrstW { _OtghsrstW { w : self } } # [ doc = "Bit 25 - Ethernet MAC reset" ] # [ inline ( always ) ] pub fn ethmacrst ( & mut self ) -> _EthmacrstW { _EthmacrstW { w : self } } # [ doc = "Bit 22 - DMA2 reset" ] # [ inline ( always ) ] pub fn dma2rst ( & mut self ) -> _Dma2rstW { _Dma2rstW { w : self } } # [ doc = "Bit 21 - DMA2 reset" ] # [ inline ( always ) ] pub fn dma1rst ( & mut self ) -> _Dma1rstW { _Dma1rstW { w : self } } # [ doc = "Bit 12 - CRC reset" ] # [ inline ( always ) ] pub fn crcrst ( & mut self ) -> _CrcrstW { _CrcrstW { w : self } } # [ doc = "Bit 8 - IO port I reset" ] # [ inline ( always ) ] pub fn gpioirst ( & mut self ) -> _GpioirstW { _GpioirstW { w : self } } # [ doc = "Bit 7 - IO port H reset" ] # [ inline ( always ) ] pub fn gpiohrst ( & mut self ) -> _GpiohrstW { _GpiohrstW { w : self } } # [ doc = "Bit 6 - IO port G reset" ] # [ inline ( always ) ] pub fn gpiogrst ( & mut self ) -> _GpiogrstW { _GpiogrstW { w : self } } # [ doc = "Bit 5 - IO port F reset" ] # [ inline ( always ) ] pub fn gpiofrst ( & mut self ) -> _GpiofrstW { _GpiofrstW { w : self } } # [ doc = "Bit 4 - IO port E reset" ] # [ inline ( always ) ] pub fn gpioerst ( & mut self ) -> _GpioerstW { _GpioerstW { w : self } } # [ doc = "Bit 3 - IO port D reset" ] # [ inline ( always ) ] pub fn gpiodrst ( & mut self ) -> _GpiodrstW { _GpiodrstW { w : self } } # [ doc = "Bit 2 - IO port C reset" ] # [ inline ( always ) ] pub fn gpiocrst ( & mut self ) -> _GpiocrstW { _GpiocrstW { w : self } } # [ doc = "Bit 1 - IO port B reset" ] # [ inline ( always ) ] pub fn gpiobrst ( & mut self ) -> _GpiobrstW { _GpiobrstW { w : self } } # [ doc = "Bit 0 - IO port A reset" ] # [ inline ( always ) ] pub fn gpioarst ( & mut self ) -> _GpioarstW { _GpioarstW { w : self } } } } # [ doc = "AHB2 peripheral reset register" ] pub struct Ahb2rstr { register : VolatileCell < u32 > } # [ doc = "AHB2 peripheral reset register" ] pub mod ahb2rstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb2rstr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtgfsrstR { bits : u8 , } impl OtgfsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RngrstR { bits : u8 , } impl RngrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcmirstR { bits : u8 , } impl DcmirstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OtgfsrstW < 'a > { w : & 'a mut W , } impl < 'a > _OtgfsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RngrstW < 'a > { w : & 'a mut W , } impl < 'a > _RngrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcmirstW < 'a > { w : & 'a mut W , } impl < 'a > _DcmirstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - USB OTG FS module reset" ] # [ inline ( always ) ] pub fn otgfsrst ( & self ) -> OtgfsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgfsrstR { bits } } # [ doc = "Bit 6 - Random number generator module reset" ] # [ inline ( always ) ] pub fn rngrst ( & self ) -> RngrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RngrstR { bits } } # [ doc = "Bit 0 - Camera interface reset" ] # [ inline ( always ) ] pub fn dcmirst ( & self ) -> DcmirstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcmirstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - USB OTG FS module reset" ] # [ inline ( always ) ] pub fn otgfsrst ( & mut self ) -> _OtgfsrstW { _OtgfsrstW { w : self } } # [ doc = "Bit 6 - Random number generator module reset" ] # [ inline ( always ) ] pub fn rngrst ( & mut self ) -> _RngrstW { _RngrstW { w : self } } # [ doc = "Bit 0 - Camera interface reset" ] # [ inline ( always ) ] pub fn dcmirst ( & mut self ) -> _DcmirstW { _DcmirstW { w : self } } } } # [ doc = "AHB3 peripheral reset register" ] pub struct Ahb3rstr { register : VolatileCell < u32 > } # [ doc = "AHB3 peripheral reset register" ] pub mod ahb3rstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb3rstr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FsmcrstR { bits : u8 , } impl FsmcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FsmcrstW < 'a > { w : & 'a mut W , } impl < 'a > _FsmcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Flexible static memory controller module reset" ] # [ inline ( always ) ] pub fn fsmcrst ( & self ) -> FsmcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsmcrstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Flexible static memory controller module reset" ] # [ inline ( always ) ] pub fn fsmcrst ( & mut self ) -> _FsmcrstW { _FsmcrstW { w : self } } } } # [ doc = "APB1 peripheral reset register" ] pub struct Apb1rstr { register : VolatileCell < u32 > } # [ doc = "APB1 peripheral reset register" ] pub mod apb1rstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb1rstr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DacrstR { bits : u8 , } impl DacrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwrrstR { bits : u8 , } impl PwrrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can2rstR { bits : u8 , } impl Can2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can1rstR { bits : u8 , } impl Can1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c3rstR { bits : u8 , } impl I2c3rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c2rstR { bits : u8 , } impl I2c2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c1rstR { bits : u8 , } impl I2c1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart5rstR { bits : u8 , } impl Uart5rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart4rstR { bits : u8 , } impl Uart4rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart3rstR { bits : u8 , } impl Uart3rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart2rstR { bits : u8 , } impl Uart2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi3rstR { bits : u8 , } impl Spi3rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi2rstR { bits : u8 , } impl Spi2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WwdgrstR { bits : u8 , } impl WwdgrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim14rstR { bits : u8 , } impl Tim14rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim13rstR { bits : u8 , } impl Tim13rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim12rstR { bits : u8 , } impl Tim12rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim7rstR { bits : u8 , } impl Tim7rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim6rstR { bits : u8 , } impl Tim6rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim5rstR { bits : u8 , } impl Tim5rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim4rstR { bits : u8 , } impl Tim4rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim3rstR { bits : u8 , } impl Tim3rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim2rstR { bits : u8 , } impl Tim2rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DacrstW < 'a > { w : & 'a mut W , } impl < 'a > _DacrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwrrstW < 'a > { w : & 'a mut W , } impl < 'a > _PwrrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can2rstW < 'a > { w : & 'a mut W , } impl < 'a > _Can2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can1rstW < 'a > { w : & 'a mut W , } impl < 'a > _Can1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c3rstW < 'a > { w : & 'a mut W , } impl < 'a > _I2c3rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c2rstW < 'a > { w : & 'a mut W , } impl < 'a > _I2c2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c1rstW < 'a > { w : & 'a mut W , } impl < 'a > _I2c1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart5rstW < 'a > { w : & 'a mut W , } impl < 'a > _Uart5rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart4rstW < 'a > { w : & 'a mut W , } impl < 'a > _Uart4rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart3rstW < 'a > { w : & 'a mut W , } impl < 'a > _Uart3rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart2rstW < 'a > { w : & 'a mut W , } impl < 'a > _Uart2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi3rstW < 'a > { w : & 'a mut W , } impl < 'a > _Spi3rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi2rstW < 'a > { w : & 'a mut W , } impl < 'a > _Spi2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WwdgrstW < 'a > { w : & 'a mut W , } impl < 'a > _WwdgrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim14rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim14rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim13rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim13rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim12rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim12rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim7rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim7rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim6rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim6rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim5rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim5rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim4rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim4rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim3rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim3rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim2rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim2rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - DAC reset" ] # [ inline ( always ) ] pub fn dacrst ( & self ) -> DacrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DacrstR { bits } } # [ doc = "Bit 28 - Power interface reset" ] # [ inline ( always ) ] pub fn pwrrst ( & self ) -> PwrrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrrstR { bits } } # [ doc = "Bit 26 - CAN2 reset" ] # [ inline ( always ) ] pub fn can2rst ( & self ) -> Can2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can2rstR { bits } } # [ doc = "Bit 25 - CAN1 reset" ] # [ inline ( always ) ] pub fn can1rst ( & self ) -> Can1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can1rstR { bits } } # [ doc = "Bit 23 - I2C3 reset" ] # [ inline ( always ) ] pub fn i2c3rst ( & self ) -> I2c3rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c3rstR { bits } } # [ doc = "Bit 22 - I2C 2 reset" ] # [ inline ( always ) ] pub fn i2c2rst ( & self ) -> I2c2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c2rstR { bits } } # [ doc = "Bit 21 - I2C 1 reset" ] # [ inline ( always ) ] pub fn i2c1rst ( & self ) -> I2c1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c1rstR { bits } } # [ doc = "Bit 20 - USART 5 reset" ] # [ inline ( always ) ] pub fn uart5rst ( & self ) -> Uart5rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart5rstR { bits } } # [ doc = "Bit 19 - USART 4 reset" ] # [ inline ( always ) ] pub fn uart4rst ( & self ) -> Uart4rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart4rstR { bits } } # [ doc = "Bit 18 - USART 3 reset" ] # [ inline ( always ) ] pub fn uart3rst ( & self ) -> Uart3rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart3rstR { bits } } # [ doc = "Bit 17 - USART 2 reset" ] # [ inline ( always ) ] pub fn uart2rst ( & self ) -> Uart2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart2rstR { bits } } # [ doc = "Bit 15 - SPI 3 reset" ] # [ inline ( always ) ] pub fn spi3rst ( & self ) -> Spi3rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi3rstR { bits } } # [ doc = "Bit 14 - SPI 2 reset" ] # [ inline ( always ) ] pub fn spi2rst ( & self ) -> Spi2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi2rstR { bits } } # [ doc = "Bit 11 - Window watchdog reset" ] # [ inline ( always ) ] pub fn wwdgrst ( & self ) -> WwdgrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WwdgrstR { bits } } # [ doc = "Bit 8 - TIM14 reset" ] # [ inline ( always ) ] pub fn tim14rst ( & self ) -> Tim14rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim14rstR { bits } } # [ doc = "Bit 7 - TIM13 reset" ] # [ inline ( always ) ] pub fn tim13rst ( & self ) -> Tim13rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim13rstR { bits } } # [ doc = "Bit 6 - TIM12 reset" ] # [ inline ( always ) ] pub fn tim12rst ( & self ) -> Tim12rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim12rstR { bits } } # [ doc = "Bit 5 - TIM7 reset" ] # [ inline ( always ) ] pub fn tim7rst ( & self ) -> Tim7rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim7rstR { bits } } # [ doc = "Bit 4 - TIM6 reset" ] # [ inline ( always ) ] pub fn tim6rst ( & self ) -> Tim6rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim6rstR { bits } } # [ doc = "Bit 3 - TIM5 reset" ] # [ inline ( always ) ] pub fn tim5rst ( & self ) -> Tim5rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim5rstR { bits } } # [ doc = "Bit 2 - TIM4 reset" ] # [ inline ( always ) ] pub fn tim4rst ( & self ) -> Tim4rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim4rstR { bits } } # [ doc = "Bit 1 - TIM3 reset" ] # [ inline ( always ) ] pub fn tim3rst ( & self ) -> Tim3rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim3rstR { bits } } # [ doc = "Bit 0 - TIM2 reset" ] # [ inline ( always ) ] pub fn tim2rst ( & self ) -> Tim2rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim2rstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - DAC reset" ] # [ inline ( always ) ] pub fn dacrst ( & mut self ) -> _DacrstW { _DacrstW { w : self } } # [ doc = "Bit 28 - Power interface reset" ] # [ inline ( always ) ] pub fn pwrrst ( & mut self ) -> _PwrrstW { _PwrrstW { w : self } } # [ doc = "Bit 26 - CAN2 reset" ] # [ inline ( always ) ] pub fn can2rst ( & mut self ) -> _Can2rstW { _Can2rstW { w : self } } # [ doc = "Bit 25 - CAN1 reset" ] # [ inline ( always ) ] pub fn can1rst ( & mut self ) -> _Can1rstW { _Can1rstW { w : self } } # [ doc = "Bit 23 - I2C3 reset" ] # [ inline ( always ) ] pub fn i2c3rst ( & mut self ) -> _I2c3rstW { _I2c3rstW { w : self } } # [ doc = "Bit 22 - I2C 2 reset" ] # [ inline ( always ) ] pub fn i2c2rst ( & mut self ) -> _I2c2rstW { _I2c2rstW { w : self } } # [ doc = "Bit 21 - I2C 1 reset" ] # [ inline ( always ) ] pub fn i2c1rst ( & mut self ) -> _I2c1rstW { _I2c1rstW { w : self } } # [ doc = "Bit 20 - USART 5 reset" ] # [ inline ( always ) ] pub fn uart5rst ( & mut self ) -> _Uart5rstW { _Uart5rstW { w : self } } # [ doc = "Bit 19 - USART 4 reset" ] # [ inline ( always ) ] pub fn uart4rst ( & mut self ) -> _Uart4rstW { _Uart4rstW { w : self } } # [ doc = "Bit 18 - USART 3 reset" ] # [ inline ( always ) ] pub fn uart3rst ( & mut self ) -> _Uart3rstW { _Uart3rstW { w : self } } # [ doc = "Bit 17 - USART 2 reset" ] # [ inline ( always ) ] pub fn uart2rst ( & mut self ) -> _Uart2rstW { _Uart2rstW { w : self } } # [ doc = "Bit 15 - SPI 3 reset" ] # [ inline ( always ) ] pub fn spi3rst ( & mut self ) -> _Spi3rstW { _Spi3rstW { w : self } } # [ doc = "Bit 14 - SPI 2 reset" ] # [ inline ( always ) ] pub fn spi2rst ( & mut self ) -> _Spi2rstW { _Spi2rstW { w : self } } # [ doc = "Bit 11 - Window watchdog reset" ] # [ inline ( always ) ] pub fn wwdgrst ( & mut self ) -> _WwdgrstW { _WwdgrstW { w : self } } # [ doc = "Bit 8 - TIM14 reset" ] # [ inline ( always ) ] pub fn tim14rst ( & mut self ) -> _Tim14rstW { _Tim14rstW { w : self } } # [ doc = "Bit 7 - TIM13 reset" ] # [ inline ( always ) ] pub fn tim13rst ( & mut self ) -> _Tim13rstW { _Tim13rstW { w : self } } # [ doc = "Bit 6 - TIM12 reset" ] # [ inline ( always ) ] pub fn tim12rst ( & mut self ) -> _Tim12rstW { _Tim12rstW { w : self } } # [ doc = "Bit 5 - TIM7 reset" ] # [ inline ( always ) ] pub fn tim7rst ( & mut self ) -> _Tim7rstW { _Tim7rstW { w : self } } # [ doc = "Bit 4 - TIM6 reset" ] # [ inline ( always ) ] pub fn tim6rst ( & mut self ) -> _Tim6rstW { _Tim6rstW { w : self } } # [ doc = "Bit 3 - TIM5 reset" ] # [ inline ( always ) ] pub fn tim5rst ( & mut self ) -> _Tim5rstW { _Tim5rstW { w : self } } # [ doc = "Bit 2 - TIM4 reset" ] # [ inline ( always ) ] pub fn tim4rst ( & mut self ) -> _Tim4rstW { _Tim4rstW { w : self } } # [ doc = "Bit 1 - TIM3 reset" ] # [ inline ( always ) ] pub fn tim3rst ( & mut self ) -> _Tim3rstW { _Tim3rstW { w : self } } # [ doc = "Bit 0 - TIM2 reset" ] # [ inline ( always ) ] pub fn tim2rst ( & mut self ) -> _Tim2rstW { _Tim2rstW { w : self } } } } # [ doc = "APB2 peripheral reset register" ] pub struct Apb2rstr { register : VolatileCell < u32 > } # [ doc = "APB2 peripheral reset register" ] pub mod apb2rstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb2rstr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tim11rstR { bits : u8 , } impl Tim11rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim10rstR { bits : u8 , } impl Tim10rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim9rstR { bits : u8 , } impl Tim9rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SyscfgrstR { bits : u8 , } impl SyscfgrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi1rstR { bits : u8 , } impl Spi1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdiorstR { bits : u8 , } impl SdiorstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AdcrstR { bits : u8 , } impl AdcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart6rstR { bits : u8 , } impl Usart6rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart1rstR { bits : u8 , } impl Usart1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim8rstR { bits : u8 , } impl Tim8rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim1rstR { bits : u8 , } impl Tim1rstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tim11rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim11rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim10rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim10rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim9rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim9rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SyscfgrstW < 'a > { w : & 'a mut W , } impl < 'a > _SyscfgrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi1rstW < 'a > { w : & 'a mut W , } impl < 'a > _Spi1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdiorstW < 'a > { w : & 'a mut W , } impl < 'a > _SdiorstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AdcrstW < 'a > { w : & 'a mut W , } impl < 'a > _AdcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart6rstW < 'a > { w : & 'a mut W , } impl < 'a > _Usart6rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart1rstW < 'a > { w : & 'a mut W , } impl < 'a > _Usart1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim8rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim8rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim1rstW < 'a > { w : & 'a mut W , } impl < 'a > _Tim1rstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 18 - TIM11 reset" ] # [ inline ( always ) ] pub fn tim11rst ( & self ) -> Tim11rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim11rstR { bits } } # [ doc = "Bit 17 - TIM10 reset" ] # [ inline ( always ) ] pub fn tim10rst ( & self ) -> Tim10rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim10rstR { bits } } # [ doc = "Bit 16 - TIM9 reset" ] # [ inline ( always ) ] pub fn tim9rst ( & self ) -> Tim9rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim9rstR { bits } } # [ doc = "Bit 14 - System configuration controller reset" ] # [ inline ( always ) ] pub fn syscfgrst ( & self ) -> SyscfgrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SyscfgrstR { bits } } # [ doc = "Bit 12 - SPI 1 reset" ] # [ inline ( always ) ] pub fn spi1rst ( & self ) -> Spi1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi1rstR { bits } } # [ doc = "Bit 11 - SDIO reset" ] # [ inline ( always ) ] pub fn sdiorst ( & self ) -> SdiorstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdiorstR { bits } } # [ doc = "Bit 8 - ADC interface reset (common to all ADCs)" ] # [ inline ( always ) ] pub fn adcrst ( & self ) -> AdcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AdcrstR { bits } } # [ doc = "Bit 5 - USART6 reset" ] # [ inline ( always ) ] pub fn usart6rst ( & self ) -> Usart6rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart6rstR { bits } } # [ doc = "Bit 4 - USART1 reset" ] # [ inline ( always ) ] pub fn usart1rst ( & self ) -> Usart1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart1rstR { bits } } # [ doc = "Bit 1 - TIM8 reset" ] # [ inline ( always ) ] pub fn tim8rst ( & self ) -> Tim8rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim8rstR { bits } } # [ doc = "Bit 0 - TIM1 reset" ] # [ inline ( always ) ] pub fn tim1rst ( & self ) -> Tim1rstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim1rstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 18 - TIM11 reset" ] # [ inline ( always ) ] pub fn tim11rst ( & mut self ) -> _Tim11rstW { _Tim11rstW { w : self } } # [ doc = "Bit 17 - TIM10 reset" ] # [ inline ( always ) ] pub fn tim10rst ( & mut self ) -> _Tim10rstW { _Tim10rstW { w : self } } # [ doc = "Bit 16 - TIM9 reset" ] # [ inline ( always ) ] pub fn tim9rst ( & mut self ) -> _Tim9rstW { _Tim9rstW { w : self } } # [ doc = "Bit 14 - System configuration controller reset" ] # [ inline ( always ) ] pub fn syscfgrst ( & mut self ) -> _SyscfgrstW { _SyscfgrstW { w : self } } # [ doc = "Bit 12 - SPI 1 reset" ] # [ inline ( always ) ] pub fn spi1rst ( & mut self ) -> _Spi1rstW { _Spi1rstW { w : self } } # [ doc = "Bit 11 - SDIO reset" ] # [ inline ( always ) ] pub fn sdiorst ( & mut self ) -> _SdiorstW { _SdiorstW { w : self } } # [ doc = "Bit 8 - ADC interface reset (common to all ADCs)" ] # [ inline ( always ) ] pub fn adcrst ( & mut self ) -> _AdcrstW { _AdcrstW { w : self } } # [ doc = "Bit 5 - USART6 reset" ] # [ inline ( always ) ] pub fn usart6rst ( & mut self ) -> _Usart6rstW { _Usart6rstW { w : self } } # [ doc = "Bit 4 - USART1 reset" ] # [ inline ( always ) ] pub fn usart1rst ( & mut self ) -> _Usart1rstW { _Usart1rstW { w : self } } # [ doc = "Bit 1 - TIM8 reset" ] # [ inline ( always ) ] pub fn tim8rst ( & mut self ) -> _Tim8rstW { _Tim8rstW { w : self } } # [ doc = "Bit 0 - TIM1 reset" ] # [ inline ( always ) ] pub fn tim1rst ( & mut self ) -> _Tim1rstW { _Tim1rstW { w : self } } } } # [ doc = "AHB1 peripheral clock register" ] pub struct Ahb1enr { register : VolatileCell < u32 > } # [ doc = "AHB1 peripheral clock register" ] pub mod ahb1enr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb1enr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtghsulpienR { bits : u8 , } impl OtghsulpienR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtghsenR { bits : u8 , } impl OtghsenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacptpenR { bits : u8 , } impl EthmacptpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacrxenR { bits : u8 , } impl EthmacrxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmactxenR { bits : u8 , } impl EthmactxenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacenR { bits : u8 , } impl EthmacenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma2enR { bits : u8 , } impl Dma2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma1enR { bits : u8 , } impl Dma1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BkpsramenR { bits : u8 , } impl BkpsramenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrcenR { bits : u8 , } impl CrcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioienR { bits : u8 , } impl GpioienR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiohenR { bits : u8 , } impl GpiohenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiogenR { bits : u8 , } impl GpiogenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiofenR { bits : u8 , } impl GpiofenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioeenR { bits : u8 , } impl GpioeenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiodenR { bits : u8 , } impl GpiodenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiocenR { bits : u8 , } impl GpiocenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = "Possible values of the field `GPIOBEN`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum GpiobenR { # [ doc = "0: Disable" ] Disable , # [ doc = "1: Enable" ] Enable } impl GpiobenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { GpiobenR :: Disable => 0 , GpiobenR :: Enable => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> GpiobenR { match bits { 0 => GpiobenR :: Disable , 1 => GpiobenR :: Enable , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `Disable`" ] # [ inline ( always ) ] pub fn is_disable ( & self ) -> bool { * self == GpiobenR :: Disable } # [ doc = "Checks if the value of the field is `Enable`" ] # [ inline ( always ) ] pub fn is_enable ( & self ) -> bool { * self == GpiobenR :: Enable } } # [ doc = "Possible values of the field `GPIOAEN`" ] pub type GpioaenR = GpiobenR ; # [ doc = r" Proxy" ] pub struct _OtghsulpienW < 'a > { w : & 'a mut W , } impl < 'a > _OtghsulpienW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtghsenW < 'a > { w : & 'a mut W , } impl < 'a > _OtghsenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacptpenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacptpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacrxenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacrxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmactxenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmactxenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma2enW < 'a > { w : & 'a mut W , } impl < 'a > _Dma2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma1enW < 'a > { w : & 'a mut W , } impl < 'a > _Dma1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BkpsramenW < 'a > { w : & 'a mut W , } impl < 'a > _BkpsramenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrcenW < 'a > { w : & 'a mut W , } impl < 'a > _CrcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioienW < 'a > { w : & 'a mut W , } impl < 'a > _GpioienW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiohenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiohenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiogenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiogenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiofenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiofenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioeenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioeenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiodenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiodenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiocenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiocenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `GPIOBEN`" ] pub enum GpiobenW { # [ doc = "0: Disable" ] Disable , # [ doc = "1: Enable" ] Enable } impl GpiobenW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { GpiobenW :: Disable => 0 , GpiobenW :: Enable => 1 } } } # [ doc = r" Proxy" ] pub struct _GpiobenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiobenW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : GpiobenW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Disable" ] # [ inline ( always ) ] pub fn disable ( self ) -> & 'a mut W { self . variant ( GpiobenW :: Disable ) } # [ doc = "1: Enable" ] # [ inline ( always ) ] pub fn enable ( self ) -> & 'a mut W { self . variant ( GpiobenW :: Enable ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `GPIOAEN`" ] pub type GpioaenW = GpiobenW ; # [ doc = r" Proxy" ] pub struct _GpioaenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioaenW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : GpioaenW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Disable" ] # [ inline ( always ) ] pub fn disable ( self ) -> & 'a mut W { self . variant ( GpiobenW :: Disable ) } # [ doc = "1: Enable" ] # [ inline ( always ) ] pub fn enable ( self ) -> & 'a mut W { self . variant ( GpiobenW :: Enable ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 30 - USB OTG HSULPI clock enable" ] # [ inline ( always ) ] pub fn otghsulpien ( & self ) -> OtghsulpienR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtghsulpienR { bits } } # [ doc = "Bit 29 - USB OTG HS clock enable" ] # [ inline ( always ) ] pub fn otghsen ( & self ) -> OtghsenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtghsenR { bits } } # [ doc = "Bit 28 - Ethernet PTP clock enable" ] # [ inline ( always ) ] pub fn ethmacptpen ( & self ) -> EthmacptpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacptpenR { bits } } # [ doc = "Bit 27 - Ethernet Reception clock enable" ] # [ inline ( always ) ] pub fn ethmacrxen ( & self ) -> EthmacrxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacrxenR { bits } } # [ doc = "Bit 26 - Ethernet Transmission clock enable" ] # [ inline ( always ) ] pub fn ethmactxen ( & self ) -> EthmactxenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmactxenR { bits } } # [ doc = "Bit 25 - Ethernet MAC clock enable" ] # [ inline ( always ) ] pub fn ethmacen ( & self ) -> EthmacenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacenR { bits } } # [ doc = "Bit 22 - DMA2 clock enable" ] # [ inline ( always ) ] pub fn dma2en ( & self ) -> Dma2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma2enR { bits } } # [ doc = "Bit 21 - DMA1 clock enable" ] # [ inline ( always ) ] pub fn dma1en ( & self ) -> Dma1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma1enR { bits } } # [ doc = "Bit 18 - Backup SRAM interface clock enable" ] # [ inline ( always ) ] pub fn bkpsramen ( & self ) -> BkpsramenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BkpsramenR { bits } } # [ doc = "Bit 12 - CRC clock enable" ] # [ inline ( always ) ] pub fn crcen ( & self ) -> CrcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrcenR { bits } } # [ doc = "Bit 8 - IO port I clock enable" ] # [ inline ( always ) ] pub fn gpioien ( & self ) -> GpioienR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioienR { bits } } # [ doc = "Bit 7 - IO port H clock enable" ] # [ inline ( always ) ] pub fn gpiohen ( & self ) -> GpiohenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiohenR { bits } } # [ doc = "Bit 6 - IO port G clock enable" ] # [ inline ( always ) ] pub fn gpiogen ( & self ) -> GpiogenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiogenR { bits } } # [ doc = "Bit 5 - IO port F clock enable" ] # [ inline ( always ) ] pub fn gpiofen ( & self ) -> GpiofenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiofenR { bits } } # [ doc = "Bit 4 - IO port E clock enable" ] # [ inline ( always ) ] pub fn gpioeen ( & self ) -> GpioeenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioeenR { bits } } # [ doc = "Bit 3 - IO port D clock enable" ] # [ inline ( always ) ] pub fn gpioden ( & self ) -> GpiodenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiodenR { bits } } # [ doc = "Bit 2 - IO port C clock enable" ] # [ inline ( always ) ] pub fn gpiocen ( & self ) -> GpiocenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiocenR { bits } } # [ doc = "Bit 1 - IO port B clock enable" ] # [ inline ( always ) ] pub fn gpioben ( & self ) -> GpiobenR { GpiobenR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 0 - IO port A clock enable" ] # [ inline ( always ) ] pub fn gpioaen ( & self ) -> GpioaenR { GpioaenR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1048576 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 30 - USB OTG HSULPI clock enable" ] # [ inline ( always ) ] pub fn otghsulpien ( & mut self ) -> _OtghsulpienW { _OtghsulpienW { w : self } } # [ doc = "Bit 29 - USB OTG HS clock enable" ] # [ inline ( always ) ] pub fn otghsen ( & mut self ) -> _OtghsenW { _OtghsenW { w : self } } # [ doc = "Bit 28 - Ethernet PTP clock enable" ] # [ inline ( always ) ] pub fn ethmacptpen ( & mut self ) -> _EthmacptpenW { _EthmacptpenW { w : self } } # [ doc = "Bit 27 - Ethernet Reception clock enable" ] # [ inline ( always ) ] pub fn ethmacrxen ( & mut self ) -> _EthmacrxenW { _EthmacrxenW { w : self } } # [ doc = "Bit 26 - Ethernet Transmission clock enable" ] # [ inline ( always ) ] pub fn ethmactxen ( & mut self ) -> _EthmactxenW { _EthmactxenW { w : self } } # [ doc = "Bit 25 - Ethernet MAC clock enable" ] # [ inline ( always ) ] pub fn ethmacen ( & mut self ) -> _EthmacenW { _EthmacenW { w : self } } # [ doc = "Bit 22 - DMA2 clock enable" ] # [ inline ( always ) ] pub fn dma2en ( & mut self ) -> _Dma2enW { _Dma2enW { w : self } } # [ doc = "Bit 21 - DMA1 clock enable" ] # [ inline ( always ) ] pub fn dma1en ( & mut self ) -> _Dma1enW { _Dma1enW { w : self } } # [ doc = "Bit 18 - Backup SRAM interface clock enable" ] # [ inline ( always ) ] pub fn bkpsramen ( & mut self ) -> _BkpsramenW { _BkpsramenW { w : self } } # [ doc = "Bit 12 - CRC clock enable" ] # [ inline ( always ) ] pub fn crcen ( & mut self ) -> _CrcenW { _CrcenW { w : self } } # [ doc = "Bit 8 - IO port I clock enable" ] # [ inline ( always ) ] pub fn gpioien ( & mut self ) -> _GpioienW { _GpioienW { w : self } } # [ doc = "Bit 7 - IO port H clock enable" ] # [ inline ( always ) ] pub fn gpiohen ( & mut self ) -> _GpiohenW { _GpiohenW { w : self } } # [ doc = "Bit 6 - IO port G clock enable" ] # [ inline ( always ) ] pub fn gpiogen ( & mut self ) -> _GpiogenW { _GpiogenW { w : self } } # [ doc = "Bit 5 - IO port F clock enable" ] # [ inline ( always ) ] pub fn gpiofen ( & mut self ) -> _GpiofenW { _GpiofenW { w : self } } # [ doc = "Bit 4 - IO port E clock enable" ] # [ inline ( always ) ] pub fn gpioeen ( & mut self ) -> _GpioeenW { _GpioeenW { w : self } } # [ doc = "Bit 3 - IO port D clock enable" ] # [ inline ( always ) ] pub fn gpioden ( & mut self ) -> _GpiodenW { _GpiodenW { w : self } } # [ doc = "Bit 2 - IO port C clock enable" ] # [ inline ( always ) ] pub fn gpiocen ( & mut self ) -> _GpiocenW { _GpiocenW { w : self } } # [ doc = "Bit 1 - IO port B clock enable" ] # [ inline ( always ) ] pub fn gpioben ( & mut self ) -> _GpiobenW { _GpiobenW { w : self } } # [ doc = "Bit 0 - IO port A clock enable" ] # [ inline ( always ) ] pub fn gpioaen ( & mut self ) -> _GpioaenW { _GpioaenW { w : self } } } } # [ doc = "AHB2 peripheral clock enable register" ] pub struct Ahb2enr { register : VolatileCell < u32 > } # [ doc = "AHB2 peripheral clock enable register" ] pub mod ahb2enr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb2enr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtgfsenR { bits : u8 , } impl OtgfsenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RngenR { bits : u8 , } impl RngenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcmienR { bits : u8 , } impl DcmienR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OtgfsenW < 'a > { w : & 'a mut W , } impl < 'a > _OtgfsenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RngenW < 'a > { w : & 'a mut W , } impl < 'a > _RngenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcmienW < 'a > { w : & 'a mut W , } impl < 'a > _DcmienW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - USB OTG FS clock enable" ] # [ inline ( always ) ] pub fn otgfsen ( & self ) -> OtgfsenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgfsenR { bits } } # [ doc = "Bit 6 - Random number generator clock enable" ] # [ inline ( always ) ] pub fn rngen ( & self ) -> RngenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RngenR { bits } } # [ doc = "Bit 0 - Camera interface enable" ] # [ inline ( always ) ] pub fn dcmien ( & self ) -> DcmienR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcmienR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - USB OTG FS clock enable" ] # [ inline ( always ) ] pub fn otgfsen ( & mut self ) -> _OtgfsenW { _OtgfsenW { w : self } } # [ doc = "Bit 6 - Random number generator clock enable" ] # [ inline ( always ) ] pub fn rngen ( & mut self ) -> _RngenW { _RngenW { w : self } } # [ doc = "Bit 0 - Camera interface enable" ] # [ inline ( always ) ] pub fn dcmien ( & mut self ) -> _DcmienW { _DcmienW { w : self } } } } # [ doc = "AHB3 peripheral clock enable register" ] pub struct Ahb3enr { register : VolatileCell < u32 > } # [ doc = "AHB3 peripheral clock enable register" ] pub mod ahb3enr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb3enr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FsmcenR { bits : u8 , } impl FsmcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FsmcenW < 'a > { w : & 'a mut W , } impl < 'a > _FsmcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Flexible static memory controller module clock enable" ] # [ inline ( always ) ] pub fn fsmcen ( & self ) -> FsmcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsmcenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Flexible static memory controller module clock enable" ] # [ inline ( always ) ] pub fn fsmcen ( & mut self ) -> _FsmcenW { _FsmcenW { w : self } } } } # [ doc = "APB1 peripheral clock enable register" ] pub struct Apb1enr { register : VolatileCell < u32 > } # [ doc = "APB1 peripheral clock enable register" ] pub mod apb1enr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb1enr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DacenR { bits : u8 , } impl DacenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwrenR { bits : u8 , } impl PwrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can2enR { bits : u8 , } impl Can2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can1enR { bits : u8 , } impl Can1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c3enR { bits : u8 , } impl I2c3enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c2enR { bits : u8 , } impl I2c2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c1enR { bits : u8 , } impl I2c1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart5enR { bits : u8 , } impl Uart5enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart4enR { bits : u8 , } impl Uart4enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart3enR { bits : u8 , } impl Usart3enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart2enR { bits : u8 , } impl Usart2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi3enR { bits : u8 , } impl Spi3enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi2enR { bits : u8 , } impl Spi2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WwdgenR { bits : u8 , } impl WwdgenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim14enR { bits : u8 , } impl Tim14enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim13enR { bits : u8 , } impl Tim13enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim12enR { bits : u8 , } impl Tim12enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim7enR { bits : u8 , } impl Tim7enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim6enR { bits : u8 , } impl Tim6enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim5enR { bits : u8 , } impl Tim5enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim4enR { bits : u8 , } impl Tim4enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim3enR { bits : u8 , } impl Tim3enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim2enR { bits : u8 , } impl Tim2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DacenW < 'a > { w : & 'a mut W , } impl < 'a > _DacenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwrenW < 'a > { w : & 'a mut W , } impl < 'a > _PwrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can2enW < 'a > { w : & 'a mut W , } impl < 'a > _Can2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can1enW < 'a > { w : & 'a mut W , } impl < 'a > _Can1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c3enW < 'a > { w : & 'a mut W , } impl < 'a > _I2c3enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c2enW < 'a > { w : & 'a mut W , } impl < 'a > _I2c2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c1enW < 'a > { w : & 'a mut W , } impl < 'a > _I2c1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart5enW < 'a > { w : & 'a mut W , } impl < 'a > _Uart5enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart4enW < 'a > { w : & 'a mut W , } impl < 'a > _Uart4enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart3enW < 'a > { w : & 'a mut W , } impl < 'a > _Usart3enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart2enW < 'a > { w : & 'a mut W , } impl < 'a > _Usart2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi3enW < 'a > { w : & 'a mut W , } impl < 'a > _Spi3enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi2enW < 'a > { w : & 'a mut W , } impl < 'a > _Spi2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WwdgenW < 'a > { w : & 'a mut W , } impl < 'a > _WwdgenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim14enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim14enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim13enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim13enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim12enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim12enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim7enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim7enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim6enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim6enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim5enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim5enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim4enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim4enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim3enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim3enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim2enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - DAC interface clock enable" ] # [ inline ( always ) ] pub fn dacen ( & self ) -> DacenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DacenR { bits } } # [ doc = "Bit 28 - Power interface clock enable" ] # [ inline ( always ) ] pub fn pwren ( & self ) -> PwrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrenR { bits } } # [ doc = "Bit 26 - CAN 2 clock enable" ] # [ inline ( always ) ] pub fn can2en ( & self ) -> Can2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can2enR { bits } } # [ doc = "Bit 25 - CAN 1 clock enable" ] # [ inline ( always ) ] pub fn can1en ( & self ) -> Can1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can1enR { bits } } # [ doc = "Bit 23 - I2C3 clock enable" ] # [ inline ( always ) ] pub fn i2c3en ( & self ) -> I2c3enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c3enR { bits } } # [ doc = "Bit 22 - I2C2 clock enable" ] # [ inline ( always ) ] pub fn i2c2en ( & self ) -> I2c2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c2enR { bits } } # [ doc = "Bit 21 - I2C1 clock enable" ] # [ inline ( always ) ] pub fn i2c1en ( & self ) -> I2c1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c1enR { bits } } # [ doc = "Bit 20 - UART5 clock enable" ] # [ inline ( always ) ] pub fn uart5en ( & self ) -> Uart5enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart5enR { bits } } # [ doc = "Bit 19 - UART4 clock enable" ] # [ inline ( always ) ] pub fn uart4en ( & self ) -> Uart4enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart4enR { bits } } # [ doc = "Bit 18 - USART3 clock enable" ] # [ inline ( always ) ] pub fn usart3en ( & self ) -> Usart3enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart3enR { bits } } # [ doc = "Bit 17 - USART 2 clock enable" ] # [ inline ( always ) ] pub fn usart2en ( & self ) -> Usart2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart2enR { bits } } # [ doc = "Bit 15 - SPI3 clock enable" ] # [ inline ( always ) ] pub fn spi3en ( & self ) -> Spi3enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi3enR { bits } } # [ doc = "Bit 14 - SPI2 clock enable" ] # [ inline ( always ) ] pub fn spi2en ( & self ) -> Spi2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi2enR { bits } } # [ doc = "Bit 11 - Window watchdog clock enable" ] # [ inline ( always ) ] pub fn wwdgen ( & self ) -> WwdgenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WwdgenR { bits } } # [ doc = "Bit 8 - TIM14 clock enable" ] # [ inline ( always ) ] pub fn tim14en ( & self ) -> Tim14enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim14enR { bits } } # [ doc = "Bit 7 - TIM13 clock enable" ] # [ inline ( always ) ] pub fn tim13en ( & self ) -> Tim13enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim13enR { bits } } # [ doc = "Bit 6 - TIM12 clock enable" ] # [ inline ( always ) ] pub fn tim12en ( & self ) -> Tim12enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim12enR { bits } } # [ doc = "Bit 5 - TIM7 clock enable" ] # [ inline ( always ) ] pub fn tim7en ( & self ) -> Tim7enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim7enR { bits } } # [ doc = "Bit 4 - TIM6 clock enable" ] # [ inline ( always ) ] pub fn tim6en ( & self ) -> Tim6enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim6enR { bits } } # [ doc = "Bit 3 - TIM5 clock enable" ] # [ inline ( always ) ] pub fn tim5en ( & self ) -> Tim5enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim5enR { bits } } # [ doc = "Bit 2 - TIM4 clock enable" ] # [ inline ( always ) ] pub fn tim4en ( & self ) -> Tim4enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim4enR { bits } } # [ doc = "Bit 1 - TIM3 clock enable" ] # [ inline ( always ) ] pub fn tim3en ( & self ) -> Tim3enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim3enR { bits } } # [ doc = "Bit 0 - TIM2 clock enable" ] # [ inline ( always ) ] pub fn tim2en ( & self ) -> Tim2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim2enR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - DAC interface clock enable" ] # [ inline ( always ) ] pub fn dacen ( & mut self ) -> _DacenW { _DacenW { w : self } } # [ doc = "Bit 28 - Power interface clock enable" ] # [ inline ( always ) ] pub fn pwren ( & mut self ) -> _PwrenW { _PwrenW { w : self } } # [ doc = "Bit 26 - CAN 2 clock enable" ] # [ inline ( always ) ] pub fn can2en ( & mut self ) -> _Can2enW { _Can2enW { w : self } } # [ doc = "Bit 25 - CAN 1 clock enable" ] # [ inline ( always ) ] pub fn can1en ( & mut self ) -> _Can1enW { _Can1enW { w : self } } # [ doc = "Bit 23 - I2C3 clock enable" ] # [ inline ( always ) ] pub fn i2c3en ( & mut self ) -> _I2c3enW { _I2c3enW { w : self } } # [ doc = "Bit 22 - I2C2 clock enable" ] # [ inline ( always ) ] pub fn i2c2en ( & mut self ) -> _I2c2enW { _I2c2enW { w : self } } # [ doc = "Bit 21 - I2C1 clock enable" ] # [ inline ( always ) ] pub fn i2c1en ( & mut self ) -> _I2c1enW { _I2c1enW { w : self } } # [ doc = "Bit 20 - UART5 clock enable" ] # [ inline ( always ) ] pub fn uart5en ( & mut self ) -> _Uart5enW { _Uart5enW { w : self } } # [ doc = "Bit 19 - UART4 clock enable" ] # [ inline ( always ) ] pub fn uart4en ( & mut self ) -> _Uart4enW { _Uart4enW { w : self } } # [ doc = "Bit 18 - USART3 clock enable" ] # [ inline ( always ) ] pub fn usart3en ( & mut self ) -> _Usart3enW { _Usart3enW { w : self } } # [ doc = "Bit 17 - USART 2 clock enable" ] # [ inline ( always ) ] pub fn usart2en ( & mut self ) -> _Usart2enW { _Usart2enW { w : self } } # [ doc = "Bit 15 - SPI3 clock enable" ] # [ inline ( always ) ] pub fn spi3en ( & mut self ) -> _Spi3enW { _Spi3enW { w : self } } # [ doc = "Bit 14 - SPI2 clock enable" ] # [ inline ( always ) ] pub fn spi2en ( & mut self ) -> _Spi2enW { _Spi2enW { w : self } } # [ doc = "Bit 11 - Window watchdog clock enable" ] # [ inline ( always ) ] pub fn wwdgen ( & mut self ) -> _WwdgenW { _WwdgenW { w : self } } # [ doc = "Bit 8 - TIM14 clock enable" ] # [ inline ( always ) ] pub fn tim14en ( & mut self ) -> _Tim14enW { _Tim14enW { w : self } } # [ doc = "Bit 7 - TIM13 clock enable" ] # [ inline ( always ) ] pub fn tim13en ( & mut self ) -> _Tim13enW { _Tim13enW { w : self } } # [ doc = "Bit 6 - TIM12 clock enable" ] # [ inline ( always ) ] pub fn tim12en ( & mut self ) -> _Tim12enW { _Tim12enW { w : self } } # [ doc = "Bit 5 - TIM7 clock enable" ] # [ inline ( always ) ] pub fn tim7en ( & mut self ) -> _Tim7enW { _Tim7enW { w : self } } # [ doc = "Bit 4 - TIM6 clock enable" ] # [ inline ( always ) ] pub fn tim6en ( & mut self ) -> _Tim6enW { _Tim6enW { w : self } } # [ doc = "Bit 3 - TIM5 clock enable" ] # [ inline ( always ) ] pub fn tim5en ( & mut self ) -> _Tim5enW { _Tim5enW { w : self } } # [ doc = "Bit 2 - TIM4 clock enable" ] # [ inline ( always ) ] pub fn tim4en ( & mut self ) -> _Tim4enW { _Tim4enW { w : self } } # [ doc = "Bit 1 - TIM3 clock enable" ] # [ inline ( always ) ] pub fn tim3en ( & mut self ) -> _Tim3enW { _Tim3enW { w : self } } # [ doc = "Bit 0 - TIM2 clock enable" ] # [ inline ( always ) ] pub fn tim2en ( & mut self ) -> _Tim2enW { _Tim2enW { w : self } } } } # [ doc = "APB2 peripheral clock enable register" ] pub struct Apb2enr { register : VolatileCell < u32 > } # [ doc = "APB2 peripheral clock enable register" ] pub mod apb2enr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb2enr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tim11enR { bits : u8 , } impl Tim11enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim10enR { bits : u8 , } impl Tim10enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim9enR { bits : u8 , } impl Tim9enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SyscfgenR { bits : u8 , } impl SyscfgenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi1enR { bits : u8 , } impl Spi1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdioenR { bits : u8 , } impl SdioenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc3enR { bits : u8 , } impl Adc3enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc2enR { bits : u8 , } impl Adc2enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc1enR { bits : u8 , } impl Adc1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart6enR { bits : u8 , } impl Usart6enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart1enR { bits : u8 , } impl Usart1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim8enR { bits : u8 , } impl Tim8enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim1enR { bits : u8 , } impl Tim1enR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tim11enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim11enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim10enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim10enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim9enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim9enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SyscfgenW < 'a > { w : & 'a mut W , } impl < 'a > _SyscfgenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi1enW < 'a > { w : & 'a mut W , } impl < 'a > _Spi1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdioenW < 'a > { w : & 'a mut W , } impl < 'a > _SdioenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc3enW < 'a > { w : & 'a mut W , } impl < 'a > _Adc3enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc2enW < 'a > { w : & 'a mut W , } impl < 'a > _Adc2enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc1enW < 'a > { w : & 'a mut W , } impl < 'a > _Adc1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart6enW < 'a > { w : & 'a mut W , } impl < 'a > _Usart6enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart1enW < 'a > { w : & 'a mut W , } impl < 'a > _Usart1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim8enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim8enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim1enW < 'a > { w : & 'a mut W , } impl < 'a > _Tim1enW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 18 - TIM11 clock enable" ] # [ inline ( always ) ] pub fn tim11en ( & self ) -> Tim11enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim11enR { bits } } # [ doc = "Bit 17 - TIM10 clock enable" ] # [ inline ( always ) ] pub fn tim10en ( & self ) -> Tim10enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim10enR { bits } } # [ doc = "Bit 16 - TIM9 clock enable" ] # [ inline ( always ) ] pub fn tim9en ( & self ) -> Tim9enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim9enR { bits } } # [ doc = "Bit 14 - System configuration controller clock enable" ] # [ inline ( always ) ] pub fn syscfgen ( & self ) -> SyscfgenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SyscfgenR { bits } } # [ doc = "Bit 12 - SPI1 clock enable" ] # [ inline ( always ) ] pub fn spi1en ( & self ) -> Spi1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi1enR { bits } } # [ doc = "Bit 11 - SDIO clock enable" ] # [ inline ( always ) ] pub fn sdioen ( & self ) -> SdioenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdioenR { bits } } # [ doc = "Bit 10 - ADC3 clock enable" ] # [ inline ( always ) ] pub fn adc3en ( & self ) -> Adc3enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc3enR { bits } } # [ doc = "Bit 9 - ADC2 clock enable" ] # [ inline ( always ) ] pub fn adc2en ( & self ) -> Adc2enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc2enR { bits } } # [ doc = "Bit 8 - ADC1 clock enable" ] # [ inline ( always ) ] pub fn adc1en ( & self ) -> Adc1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc1enR { bits } } # [ doc = "Bit 5 - USART6 clock enable" ] # [ inline ( always ) ] pub fn usart6en ( & self ) -> Usart6enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart6enR { bits } } # [ doc = "Bit 4 - USART1 clock enable" ] # [ inline ( always ) ] pub fn usart1en ( & self ) -> Usart1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart1enR { bits } } # [ doc = "Bit 1 - TIM8 clock enable" ] # [ inline ( always ) ] pub fn tim8en ( & self ) -> Tim8enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim8enR { bits } } # [ doc = "Bit 0 - TIM1 clock enable" ] # [ inline ( always ) ] pub fn tim1en ( & self ) -> Tim1enR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim1enR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 18 - TIM11 clock enable" ] # [ inline ( always ) ] pub fn tim11en ( & mut self ) -> _Tim11enW { _Tim11enW { w : self } } # [ doc = "Bit 17 - TIM10 clock enable" ] # [ inline ( always ) ] pub fn tim10en ( & mut self ) -> _Tim10enW { _Tim10enW { w : self } } # [ doc = "Bit 16 - TIM9 clock enable" ] # [ inline ( always ) ] pub fn tim9en ( & mut self ) -> _Tim9enW { _Tim9enW { w : self } } # [ doc = "Bit 14 - System configuration controller clock enable" ] # [ inline ( always ) ] pub fn syscfgen ( & mut self ) -> _SyscfgenW { _SyscfgenW { w : self } } # [ doc = "Bit 12 - SPI1 clock enable" ] # [ inline ( always ) ] pub fn spi1en ( & mut self ) -> _Spi1enW { _Spi1enW { w : self } } # [ doc = "Bit 11 - SDIO clock enable" ] # [ inline ( always ) ] pub fn sdioen ( & mut self ) -> _SdioenW { _SdioenW { w : self } } # [ doc = "Bit 10 - ADC3 clock enable" ] # [ inline ( always ) ] pub fn adc3en ( & mut self ) -> _Adc3enW { _Adc3enW { w : self } } # [ doc = "Bit 9 - ADC2 clock enable" ] # [ inline ( always ) ] pub fn adc2en ( & mut self ) -> _Adc2enW { _Adc2enW { w : self } } # [ doc = "Bit 8 - ADC1 clock enable" ] # [ inline ( always ) ] pub fn adc1en ( & mut self ) -> _Adc1enW { _Adc1enW { w : self } } # [ doc = "Bit 5 - USART6 clock enable" ] # [ inline ( always ) ] pub fn usart6en ( & mut self ) -> _Usart6enW { _Usart6enW { w : self } } # [ doc = "Bit 4 - USART1 clock enable" ] # [ inline ( always ) ] pub fn usart1en ( & mut self ) -> _Usart1enW { _Usart1enW { w : self } } # [ doc = "Bit 1 - TIM8 clock enable" ] # [ inline ( always ) ] pub fn tim8en ( & mut self ) -> _Tim8enW { _Tim8enW { w : self } } # [ doc = "Bit 0 - TIM1 clock enable" ] # [ inline ( always ) ] pub fn tim1en ( & mut self ) -> _Tim1enW { _Tim1enW { w : self } } } } # [ doc = "AHB1 peripheral clock enable in low power mode register" ] pub struct Ahb1lpenr { register : VolatileCell < u32 > } # [ doc = "AHB1 peripheral clock enable in low power mode register" ] pub mod ahb1lpenr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb1lpenr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtghsulpilpenR { bits : u8 , } impl OtghsulpilpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtghslpenR { bits : u8 , } impl OtghslpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacptplpenR { bits : u8 , } impl EthmacptplpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmacrxlpenR { bits : u8 , } impl EthmacrxlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmactxlpenR { bits : u8 , } impl EthmactxlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EthmaclpenR { bits : u8 , } impl EthmaclpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma2lpenR { bits : u8 , } impl Dma2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dma1lpenR { bits : u8 , } impl Dma1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BkpsramlpenR { bits : u8 , } impl BkpsramlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sram2lpenR { bits : u8 , } impl Sram2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sram1lpenR { bits : u8 , } impl Sram1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FlitflpenR { bits : u8 , } impl FlitflpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrclpenR { bits : u8 , } impl CrclpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioilpenR { bits : u8 , } impl GpioilpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiohlpenR { bits : u8 , } impl GpiohlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioglpenR { bits : u8 , } impl GpioglpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioflpenR { bits : u8 , } impl GpioflpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioelpenR { bits : u8 , } impl GpioelpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpiodlpenR { bits : u8 , } impl GpiodlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioclpenR { bits : u8 , } impl GpioclpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioblpenR { bits : u8 , } impl GpioblpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GpioalpenR { bits : u8 , } impl GpioalpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OtghsulpilpenW < 'a > { w : & 'a mut W , } impl < 'a > _OtghsulpilpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtghslpenW < 'a > { w : & 'a mut W , } impl < 'a > _OtghslpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacptplpenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacptplpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmacrxlpenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmacrxlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmactxlpenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmactxlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EthmaclpenW < 'a > { w : & 'a mut W , } impl < 'a > _EthmaclpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Dma2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dma1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Dma1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BkpsramlpenW < 'a > { w : & 'a mut W , } impl < 'a > _BkpsramlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sram2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Sram2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sram1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Sram1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FlitflpenW < 'a > { w : & 'a mut W , } impl < 'a > _FlitflpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrclpenW < 'a > { w : & 'a mut W , } impl < 'a > _CrclpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioilpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioilpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiohlpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiohlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioglpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioglpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioflpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioflpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioelpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioelpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpiodlpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpiodlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioclpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioclpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioblpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioblpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GpioalpenW < 'a > { w : & 'a mut W , } impl < 'a > _GpioalpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 30 - USB OTG HS ULPI clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otghsulpilpen ( & self ) -> OtghsulpilpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtghsulpilpenR { bits } } # [ doc = "Bit 29 - USB OTG HS clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otghslpen ( & self ) -> OtghslpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtghslpenR { bits } } # [ doc = "Bit 28 - Ethernet PTP clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmacptplpen ( & self ) -> EthmacptplpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacptplpenR { bits } } # [ doc = "Bit 27 - Ethernet reception clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmacrxlpen ( & self ) -> EthmacrxlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmacrxlpenR { bits } } # [ doc = "Bit 26 - Ethernet transmission clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmactxlpen ( & self ) -> EthmactxlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmactxlpenR { bits } } # [ doc = "Bit 25 - Ethernet MAC clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmaclpen ( & self ) -> EthmaclpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EthmaclpenR { bits } } # [ doc = "Bit 22 - DMA2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn dma2lpen ( & self ) -> Dma2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma2lpenR { bits } } # [ doc = "Bit 21 - DMA1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn dma1lpen ( & self ) -> Dma1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dma1lpenR { bits } } # [ doc = "Bit 18 - Backup SRAM interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn bkpsramlpen ( & self ) -> BkpsramlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BkpsramlpenR { bits } } # [ doc = "Bit 17 - SRAM 2 interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sram2lpen ( & self ) -> Sram2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sram2lpenR { bits } } # [ doc = "Bit 16 - SRAM 1interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sram1lpen ( & self ) -> Sram1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sram1lpenR { bits } } # [ doc = "Bit 15 - Flash interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn flitflpen ( & self ) -> FlitflpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FlitflpenR { bits } } # [ doc = "Bit 12 - CRC clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn crclpen ( & self ) -> CrclpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrclpenR { bits } } # [ doc = "Bit 8 - IO port I clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioilpen ( & self ) -> GpioilpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioilpenR { bits } } # [ doc = "Bit 7 - IO port H clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpiohlpen ( & self ) -> GpiohlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiohlpenR { bits } } # [ doc = "Bit 6 - IO port G clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioglpen ( & self ) -> GpioglpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioglpenR { bits } } # [ doc = "Bit 5 - IO port F clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioflpen ( & self ) -> GpioflpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioflpenR { bits } } # [ doc = "Bit 4 - IO port E clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioelpen ( & self ) -> GpioelpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioelpenR { bits } } # [ doc = "Bit 3 - IO port D clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpiodlpen ( & self ) -> GpiodlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpiodlpenR { bits } } # [ doc = "Bit 2 - IO port C clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioclpen ( & self ) -> GpioclpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioclpenR { bits } } # [ doc = "Bit 1 - IO port B clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioblpen ( & self ) -> GpioblpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioblpenR { bits } } # [ doc = "Bit 0 - IO port A clock enable during sleep mode" ] # [ inline ( always ) ] pub fn gpioalpen ( & self ) -> GpioalpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GpioalpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2120716799 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 30 - USB OTG HS ULPI clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otghsulpilpen ( & mut self ) -> _OtghsulpilpenW { _OtghsulpilpenW { w : self } } # [ doc = "Bit 29 - USB OTG HS clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otghslpen ( & mut self ) -> _OtghslpenW { _OtghslpenW { w : self } } # [ doc = "Bit 28 - Ethernet PTP clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmacptplpen ( & mut self ) -> _EthmacptplpenW { _EthmacptplpenW { w : self } } # [ doc = "Bit 27 - Ethernet reception clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmacrxlpen ( & mut self ) -> _EthmacrxlpenW { _EthmacrxlpenW { w : self } } # [ doc = "Bit 26 - Ethernet transmission clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmactxlpen ( & mut self ) -> _EthmactxlpenW { _EthmactxlpenW { w : self } } # [ doc = "Bit 25 - Ethernet MAC clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn ethmaclpen ( & mut self ) -> _EthmaclpenW { _EthmaclpenW { w : self } } # [ doc = "Bit 22 - DMA2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn dma2lpen ( & mut self ) -> _Dma2lpenW { _Dma2lpenW { w : self } } # [ doc = "Bit 21 - DMA1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn dma1lpen ( & mut self ) -> _Dma1lpenW { _Dma1lpenW { w : self } } # [ doc = "Bit 18 - Backup SRAM interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn bkpsramlpen ( & mut self ) -> _BkpsramlpenW { _BkpsramlpenW { w : self } } # [ doc = "Bit 17 - SRAM 2 interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sram2lpen ( & mut self ) -> _Sram2lpenW { _Sram2lpenW { w : self } } # [ doc = "Bit 16 - SRAM 1interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sram1lpen ( & mut self ) -> _Sram1lpenW { _Sram1lpenW { w : self } } # [ doc = "Bit 15 - Flash interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn flitflpen ( & mut self ) -> _FlitflpenW { _FlitflpenW { w : self } } # [ doc = "Bit 12 - CRC clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn crclpen ( & mut self ) -> _CrclpenW { _CrclpenW { w : self } } # [ doc = "Bit 8 - IO port I clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioilpen ( & mut self ) -> _GpioilpenW { _GpioilpenW { w : self } } # [ doc = "Bit 7 - IO port H clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpiohlpen ( & mut self ) -> _GpiohlpenW { _GpiohlpenW { w : self } } # [ doc = "Bit 6 - IO port G clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioglpen ( & mut self ) -> _GpioglpenW { _GpioglpenW { w : self } } # [ doc = "Bit 5 - IO port F clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioflpen ( & mut self ) -> _GpioflpenW { _GpioflpenW { w : self } } # [ doc = "Bit 4 - IO port E clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioelpen ( & mut self ) -> _GpioelpenW { _GpioelpenW { w : self } } # [ doc = "Bit 3 - IO port D clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpiodlpen ( & mut self ) -> _GpiodlpenW { _GpiodlpenW { w : self } } # [ doc = "Bit 2 - IO port C clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioclpen ( & mut self ) -> _GpioclpenW { _GpioclpenW { w : self } } # [ doc = "Bit 1 - IO port B clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn gpioblpen ( & mut self ) -> _GpioblpenW { _GpioblpenW { w : self } } # [ doc = "Bit 0 - IO port A clock enable during sleep mode" ] # [ inline ( always ) ] pub fn gpioalpen ( & mut self ) -> _GpioalpenW { _GpioalpenW { w : self } } } } # [ doc = "AHB2 peripheral clock enable in low power mode register" ] pub struct Ahb2lpenr { register : VolatileCell < u32 > } # [ doc = "AHB2 peripheral clock enable in low power mode register" ] pub mod ahb2lpenr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb2lpenr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OtgfslpenR { bits : u8 , } impl OtgfslpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RnglpenR { bits : u8 , } impl RnglpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcmilpenR { bits : u8 , } impl DcmilpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OtgfslpenW < 'a > { w : & 'a mut W , } impl < 'a > _OtgfslpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RnglpenW < 'a > { w : & 'a mut W , } impl < 'a > _RnglpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcmilpenW < 'a > { w : & 'a mut W , } impl < 'a > _DcmilpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - USB OTG FS clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otgfslpen ( & self ) -> OtgfslpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgfslpenR { bits } } # [ doc = "Bit 6 - Random number generator clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn rnglpen ( & self ) -> RnglpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RnglpenR { bits } } # [ doc = "Bit 0 - Camera interface enable during Sleep mode" ] # [ inline ( always ) ] pub fn dcmilpen ( & self ) -> DcmilpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcmilpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 241 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - USB OTG FS clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn otgfslpen ( & mut self ) -> _OtgfslpenW { _OtgfslpenW { w : self } } # [ doc = "Bit 6 - Random number generator clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn rnglpen ( & mut self ) -> _RnglpenW { _RnglpenW { w : self } } # [ doc = "Bit 0 - Camera interface enable during Sleep mode" ] # [ inline ( always ) ] pub fn dcmilpen ( & mut self ) -> _DcmilpenW { _DcmilpenW { w : self } } } } # [ doc = "AHB3 peripheral clock enable in low power mode register" ] pub struct Ahb3lpenr { register : VolatileCell < u32 > } # [ doc = "AHB3 peripheral clock enable in low power mode register" ] pub mod ahb3lpenr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ahb3lpenr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FsmclpenR { bits : u8 , } impl FsmclpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FsmclpenW < 'a > { w : & 'a mut W , } impl < 'a > _FsmclpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Flexible static memory controller module clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn fsmclpen ( & self ) -> FsmclpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsmclpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Flexible static memory controller module clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn fsmclpen ( & mut self ) -> _FsmclpenW { _FsmclpenW { w : self } } } } # [ doc = "APB1 peripheral clock enable in low power mode register" ] pub struct Apb1lpenr { register : VolatileCell < u32 > } # [ doc = "APB1 peripheral clock enable in low power mode register" ] pub mod apb1lpenr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb1lpenr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DaclpenR { bits : u8 , } impl DaclpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwrlpenR { bits : u8 , } impl PwrlpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can2lpenR { bits : u8 , } impl Can2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Can1lpenR { bits : u8 , } impl Can1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c3lpenR { bits : u8 , } impl I2c3lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c2lpenR { bits : u8 , } impl I2c2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2c1lpenR { bits : u8 , } impl I2c1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart5lpenR { bits : u8 , } impl Uart5lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Uart4lpenR { bits : u8 , } impl Uart4lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart3lpenR { bits : u8 , } impl Usart3lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart2lpenR { bits : u8 , } impl Usart2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi3lpenR { bits : u8 , } impl Spi3lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi2lpenR { bits : u8 , } impl Spi2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WwdglpenR { bits : u8 , } impl WwdglpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim14lpenR { bits : u8 , } impl Tim14lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim13lpenR { bits : u8 , } impl Tim13lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim12lpenR { bits : u8 , } impl Tim12lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim7lpenR { bits : u8 , } impl Tim7lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim6lpenR { bits : u8 , } impl Tim6lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim5lpenR { bits : u8 , } impl Tim5lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim4lpenR { bits : u8 , } impl Tim4lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim3lpenR { bits : u8 , } impl Tim3lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim2lpenR { bits : u8 , } impl Tim2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DaclpenW < 'a > { w : & 'a mut W , } impl < 'a > _DaclpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwrlpenW < 'a > { w : & 'a mut W , } impl < 'a > _PwrlpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Can2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Can1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Can1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c3lpenW < 'a > { w : & 'a mut W , } impl < 'a > _I2c3lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _I2c2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2c1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _I2c1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart5lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Uart5lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Uart4lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Uart4lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart3lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Usart3lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Usart2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi3lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Spi3lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Spi2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WwdglpenW < 'a > { w : & 'a mut W , } impl < 'a > _WwdglpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim14lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim14lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim13lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim13lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim12lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim12lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim7lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim7lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim6lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim6lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim5lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim5lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim4lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim4lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim3lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim3lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - DAC interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn daclpen ( & self ) -> DaclpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DaclpenR { bits } } # [ doc = "Bit 28 - Power interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn pwrlpen ( & self ) -> PwrlpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrlpenR { bits } } # [ doc = "Bit 26 - CAN 2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn can2lpen ( & self ) -> Can2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can2lpenR { bits } } # [ doc = "Bit 25 - CAN 1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn can1lpen ( & self ) -> Can1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can1lpenR { bits } } # [ doc = "Bit 23 - I2C3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c3lpen ( & self ) -> I2c3lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c3lpenR { bits } } # [ doc = "Bit 22 - I2C2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c2lpen ( & self ) -> I2c2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c2lpenR { bits } } # [ doc = "Bit 21 - I2C1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c1lpen ( & self ) -> I2c1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2c1lpenR { bits } } # [ doc = "Bit 20 - UART5 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn uart5lpen ( & self ) -> Uart5lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart5lpenR { bits } } # [ doc = "Bit 19 - UART4 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn uart4lpen ( & self ) -> Uart4lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Uart4lpenR { bits } } # [ doc = "Bit 18 - USART3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart3lpen ( & self ) -> Usart3lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart3lpenR { bits } } # [ doc = "Bit 17 - USART2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart2lpen ( & self ) -> Usart2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart2lpenR { bits } } # [ doc = "Bit 15 - SPI3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi3lpen ( & self ) -> Spi3lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi3lpenR { bits } } # [ doc = "Bit 14 - SPI2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi2lpen ( & self ) -> Spi2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi2lpenR { bits } } # [ doc = "Bit 11 - Window watchdog clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn wwdglpen ( & self ) -> WwdglpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WwdglpenR { bits } } # [ doc = "Bit 8 - TIM14 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim14lpen ( & self ) -> Tim14lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim14lpenR { bits } } # [ doc = "Bit 7 - TIM13 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim13lpen ( & self ) -> Tim13lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim13lpenR { bits } } # [ doc = "Bit 6 - TIM12 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim12lpen ( & self ) -> Tim12lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim12lpenR { bits } } # [ doc = "Bit 5 - TIM7 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim7lpen ( & self ) -> Tim7lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim7lpenR { bits } } # [ doc = "Bit 4 - TIM6 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim6lpen ( & self ) -> Tim6lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim6lpenR { bits } } # [ doc = "Bit 3 - TIM5 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim5lpen ( & self ) -> Tim5lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim5lpenR { bits } } # [ doc = "Bit 2 - TIM4 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim4lpen ( & self ) -> Tim4lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim4lpenR { bits } } # [ doc = "Bit 1 - TIM3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim3lpen ( & self ) -> Tim3lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim3lpenR { bits } } # [ doc = "Bit 0 - TIM2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim2lpen ( & self ) -> Tim2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim2lpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 922667519 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - DAC interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn daclpen ( & mut self ) -> _DaclpenW { _DaclpenW { w : self } } # [ doc = "Bit 28 - Power interface clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn pwrlpen ( & mut self ) -> _PwrlpenW { _PwrlpenW { w : self } } # [ doc = "Bit 26 - CAN 2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn can2lpen ( & mut self ) -> _Can2lpenW { _Can2lpenW { w : self } } # [ doc = "Bit 25 - CAN 1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn can1lpen ( & mut self ) -> _Can1lpenW { _Can1lpenW { w : self } } # [ doc = "Bit 23 - I2C3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c3lpen ( & mut self ) -> _I2c3lpenW { _I2c3lpenW { w : self } } # [ doc = "Bit 22 - I2C2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c2lpen ( & mut self ) -> _I2c2lpenW { _I2c2lpenW { w : self } } # [ doc = "Bit 21 - I2C1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn i2c1lpen ( & mut self ) -> _I2c1lpenW { _I2c1lpenW { w : self } } # [ doc = "Bit 20 - UART5 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn uart5lpen ( & mut self ) -> _Uart5lpenW { _Uart5lpenW { w : self } } # [ doc = "Bit 19 - UART4 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn uart4lpen ( & mut self ) -> _Uart4lpenW { _Uart4lpenW { w : self } } # [ doc = "Bit 18 - USART3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart3lpen ( & mut self ) -> _Usart3lpenW { _Usart3lpenW { w : self } } # [ doc = "Bit 17 - USART2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart2lpen ( & mut self ) -> _Usart2lpenW { _Usart2lpenW { w : self } } # [ doc = "Bit 15 - SPI3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi3lpen ( & mut self ) -> _Spi3lpenW { _Spi3lpenW { w : self } } # [ doc = "Bit 14 - SPI2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi2lpen ( & mut self ) -> _Spi2lpenW { _Spi2lpenW { w : self } } # [ doc = "Bit 11 - Window watchdog clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn wwdglpen ( & mut self ) -> _WwdglpenW { _WwdglpenW { w : self } } # [ doc = "Bit 8 - TIM14 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim14lpen ( & mut self ) -> _Tim14lpenW { _Tim14lpenW { w : self } } # [ doc = "Bit 7 - TIM13 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim13lpen ( & mut self ) -> _Tim13lpenW { _Tim13lpenW { w : self } } # [ doc = "Bit 6 - TIM12 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim12lpen ( & mut self ) -> _Tim12lpenW { _Tim12lpenW { w : self } } # [ doc = "Bit 5 - TIM7 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim7lpen ( & mut self ) -> _Tim7lpenW { _Tim7lpenW { w : self } } # [ doc = "Bit 4 - TIM6 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim6lpen ( & mut self ) -> _Tim6lpenW { _Tim6lpenW { w : self } } # [ doc = "Bit 3 - TIM5 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim5lpen ( & mut self ) -> _Tim5lpenW { _Tim5lpenW { w : self } } # [ doc = "Bit 2 - TIM4 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim4lpen ( & mut self ) -> _Tim4lpenW { _Tim4lpenW { w : self } } # [ doc = "Bit 1 - TIM3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim3lpen ( & mut self ) -> _Tim3lpenW { _Tim3lpenW { w : self } } # [ doc = "Bit 0 - TIM2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim2lpen ( & mut self ) -> _Tim2lpenW { _Tim2lpenW { w : self } } } } # [ doc = "APB2 peripheral clock enabled in low power mode register" ] pub struct Apb2lpenr { register : VolatileCell < u32 > } # [ doc = "APB2 peripheral clock enabled in low power mode register" ] pub mod apb2lpenr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Apb2lpenr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tim11lpenR { bits : u8 , } impl Tim11lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim10lpenR { bits : u8 , } impl Tim10lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim9lpenR { bits : u8 , } impl Tim9lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SyscfglpenR { bits : u8 , } impl SyscfglpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Spi1lpenR { bits : u8 , } impl Spi1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdiolpenR { bits : u8 , } impl SdiolpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc3lpenR { bits : u8 , } impl Adc3lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc2lpenR { bits : u8 , } impl Adc2lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Adc1lpenR { bits : u8 , } impl Adc1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart6lpenR { bits : u8 , } impl Usart6lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Usart1lpenR { bits : u8 , } impl Usart1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim8lpenR { bits : u8 , } impl Tim8lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tim1lpenR { bits : u8 , } impl Tim1lpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tim11lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim11lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim10lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim10lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim9lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim9lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SyscfglpenW < 'a > { w : & 'a mut W , } impl < 'a > _SyscfglpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Spi1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Spi1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdiolpenW < 'a > { w : & 'a mut W , } impl < 'a > _SdiolpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc3lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Adc3lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc2lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Adc2lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Adc1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Adc1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart6lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Usart6lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Usart1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Usart1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim8lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim8lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tim1lpenW < 'a > { w : & 'a mut W , } impl < 'a > _Tim1lpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 18 - TIM11 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim11lpen ( & self ) -> Tim11lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim11lpenR { bits } } # [ doc = "Bit 17 - TIM10 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim10lpen ( & self ) -> Tim10lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim10lpenR { bits } } # [ doc = "Bit 16 - TIM9 clock enable during sleep mode" ] # [ inline ( always ) ] pub fn tim9lpen ( & self ) -> Tim9lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim9lpenR { bits } } # [ doc = "Bit 14 - System configuration controller clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn syscfglpen ( & self ) -> SyscfglpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SyscfglpenR { bits } } # [ doc = "Bit 12 - SPI 1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi1lpen ( & self ) -> Spi1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Spi1lpenR { bits } } # [ doc = "Bit 11 - SDIO clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sdiolpen ( & self ) -> SdiolpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdiolpenR { bits } } # [ doc = "Bit 10 - ADC 3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc3lpen ( & self ) -> Adc3lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc3lpenR { bits } } # [ doc = "Bit 9 - ADC2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc2lpen ( & self ) -> Adc2lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc2lpenR { bits } } # [ doc = "Bit 8 - ADC1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc1lpen ( & self ) -> Adc1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Adc1lpenR { bits } } # [ doc = "Bit 5 - USART6 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart6lpen ( & self ) -> Usart6lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart6lpenR { bits } } # [ doc = "Bit 4 - USART1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart1lpen ( & self ) -> Usart1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Usart1lpenR { bits } } # [ doc = "Bit 1 - TIM8 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim8lpen ( & self ) -> Tim8lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim8lpenR { bits } } # [ doc = "Bit 0 - TIM1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim1lpen ( & self ) -> Tim1lpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tim1lpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 483123 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 18 - TIM11 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim11lpen ( & mut self ) -> _Tim11lpenW { _Tim11lpenW { w : self } } # [ doc = "Bit 17 - TIM10 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim10lpen ( & mut self ) -> _Tim10lpenW { _Tim10lpenW { w : self } } # [ doc = "Bit 16 - TIM9 clock enable during sleep mode" ] # [ inline ( always ) ] pub fn tim9lpen ( & mut self ) -> _Tim9lpenW { _Tim9lpenW { w : self } } # [ doc = "Bit 14 - System configuration controller clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn syscfglpen ( & mut self ) -> _SyscfglpenW { _SyscfglpenW { w : self } } # [ doc = "Bit 12 - SPI 1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn spi1lpen ( & mut self ) -> _Spi1lpenW { _Spi1lpenW { w : self } } # [ doc = "Bit 11 - SDIO clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn sdiolpen ( & mut self ) -> _SdiolpenW { _SdiolpenW { w : self } } # [ doc = "Bit 10 - ADC 3 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc3lpen ( & mut self ) -> _Adc3lpenW { _Adc3lpenW { w : self } } # [ doc = "Bit 9 - ADC2 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc2lpen ( & mut self ) -> _Adc2lpenW { _Adc2lpenW { w : self } } # [ doc = "Bit 8 - ADC1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn adc1lpen ( & mut self ) -> _Adc1lpenW { _Adc1lpenW { w : self } } # [ doc = "Bit 5 - USART6 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart6lpen ( & mut self ) -> _Usart6lpenW { _Usart6lpenW { w : self } } # [ doc = "Bit 4 - USART1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn usart1lpen ( & mut self ) -> _Usart1lpenW { _Usart1lpenW { w : self } } # [ doc = "Bit 1 - TIM8 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim8lpen ( & mut self ) -> _Tim8lpenW { _Tim8lpenW { w : self } } # [ doc = "Bit 0 - TIM1 clock enable during Sleep mode" ] # [ inline ( always ) ] pub fn tim1lpen ( & mut self ) -> _Tim1lpenW { _Tim1lpenW { w : self } } } } # [ doc = "Backup domain control register" ] pub struct Bdcr { register : VolatileCell < u32 > } # [ doc = "Backup domain control register" ] pub mod bdcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bdcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BdrstR { bits : u8 , } impl BdrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtcenR { bits : u8 , } impl RtcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Rtcsel1R { bits : u8 , } impl Rtcsel1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Rtcsel0R { bits : u8 , } impl Rtcsel0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsebypR { bits : u8 , } impl LsebypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LserdyR { bits : u8 , } impl LserdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LseonR { bits : u8 , } impl LseonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _BdrstW < 'a > { w : & 'a mut W , } impl < 'a > _BdrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtcenW < 'a > { w : & 'a mut W , } impl < 'a > _RtcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Rtcsel1W < 'a > { w : & 'a mut W , } impl < 'a > _Rtcsel1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Rtcsel0W < 'a > { w : & 'a mut W , } impl < 'a > _Rtcsel0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsebypW < 'a > { w : & 'a mut W , } impl < 'a > _LsebypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LseonW < 'a > { w : & 'a mut W , } impl < 'a > _LseonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Backup domain software reset" ] # [ inline ( always ) ] pub fn bdrst ( & self ) -> BdrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BdrstR { bits } } # [ doc = "Bit 15 - RTC clock enable" ] # [ inline ( always ) ] pub fn rtcen ( & self ) -> RtcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtcenR { bits } } # [ doc = "Bit 9 - RTC clock source selection" ] # [ inline ( always ) ] pub fn rtcsel1 ( & self ) -> Rtcsel1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rtcsel1R { bits } } # [ doc = "Bit 8 - RTC clock source selection" ] # [ inline ( always ) ] pub fn rtcsel0 ( & self ) -> Rtcsel0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rtcsel0R { bits } } # [ doc = "Bit 2 - External low-speed oscillator bypass" ] # [ inline ( always ) ] pub fn lsebyp ( & self ) -> LsebypR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsebypR { bits } } # [ doc = "Bit 1 - External low-speed oscillator ready" ] # [ inline ( always ) ] pub fn lserdy ( & self ) -> LserdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LserdyR { bits } } # [ doc = "Bit 0 - External low-speed oscillator enable" ] # [ inline ( always ) ] pub fn lseon ( & self ) -> LseonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LseonR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Backup domain software reset" ] # [ inline ( always ) ] pub fn bdrst ( & mut self ) -> _BdrstW { _BdrstW { w : self } } # [ doc = "Bit 15 - RTC clock enable" ] # [ inline ( always ) ] pub fn rtcen ( & mut self ) -> _RtcenW { _RtcenW { w : self } } # [ doc = "Bit 9 - RTC clock source selection" ] # [ inline ( always ) ] pub fn rtcsel1 ( & mut self ) -> _Rtcsel1W { _Rtcsel1W { w : self } } # [ doc = "Bit 8 - RTC clock source selection" ] # [ inline ( always ) ] pub fn rtcsel0 ( & mut self ) -> _Rtcsel0W { _Rtcsel0W { w : self } } # [ doc = "Bit 2 - External low-speed oscillator bypass" ] # [ inline ( always ) ] pub fn lsebyp ( & mut self ) -> _LsebypW { _LsebypW { w : self } } # [ doc = "Bit 0 - External low-speed oscillator enable" ] # [ inline ( always ) ] pub fn lseon ( & mut self ) -> _LseonW { _LseonW { w : self } } } } # [ doc = "clock control & status register" ] pub struct Csr { register : VolatileCell < u32 > } # [ doc = "clock control & status register" ] pub mod csr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Csr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LpwrrstfR { bits : u8 , } impl LpwrrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WwdgrstfR { bits : u8 , } impl WwdgrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WdgrstfR { bits : u8 , } impl WdgrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SftrstfR { bits : u8 , } impl SftrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PorrstfR { bits : u8 , } impl PorrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PadrstfR { bits : u8 , } impl PadrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BorrstfR { bits : u8 , } impl BorrstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RmvfR { bits : u8 , } impl RmvfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsirdyR { bits : u8 , } impl LsirdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsionR { bits : u8 , } impl LsionR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LpwrrstfW < 'a > { w : & 'a mut W , } impl < 'a > _LpwrrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WwdgrstfW < 'a > { w : & 'a mut W , } impl < 'a > _WwdgrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WdgrstfW < 'a > { w : & 'a mut W , } impl < 'a > _WdgrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SftrstfW < 'a > { w : & 'a mut W , } impl < 'a > _SftrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PorrstfW < 'a > { w : & 'a mut W , } impl < 'a > _PorrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PadrstfW < 'a > { w : & 'a mut W , } impl < 'a > _PadrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BorrstfW < 'a > { w : & 'a mut W , } impl < 'a > _BorrstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RmvfW < 'a > { w : & 'a mut W , } impl < 'a > _RmvfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsionW < 'a > { w : & 'a mut W , } impl < 'a > _LsionW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - Low-power reset flag" ] # [ inline ( always ) ] pub fn lpwrrstf ( & self ) -> LpwrrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LpwrrstfR { bits } } # [ doc = "Bit 30 - Window watchdog reset flag" ] # [ inline ( always ) ] pub fn wwdgrstf ( & self ) -> WwdgrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WwdgrstfR { bits } } # [ doc = "Bit 29 - Independent watchdog reset flag" ] # [ inline ( always ) ] pub fn wdgrstf ( & self ) -> WdgrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdgrstfR { bits } } # [ doc = "Bit 28 - Software reset flag" ] # [ inline ( always ) ] pub fn sftrstf ( & self ) -> SftrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SftrstfR { bits } } # [ doc = "Bit 27 - POR/PDR reset flag" ] # [ inline ( always ) ] pub fn porrstf ( & self ) -> PorrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PorrstfR { bits } } # [ doc = "Bit 26 - PIN reset flag" ] # [ inline ( always ) ] pub fn padrstf ( & self ) -> PadrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PadrstfR { bits } } # [ doc = "Bit 25 - BOR reset flag" ] # [ inline ( always ) ] pub fn borrstf ( & self ) -> BorrstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BorrstfR { bits } } # [ doc = "Bit 24 - Remove reset flag" ] # [ inline ( always ) ] pub fn rmvf ( & self ) -> RmvfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RmvfR { bits } } # [ doc = "Bit 1 - Internal low-speed oscillator ready" ] # [ inline ( always ) ] pub fn lsirdy ( & self ) -> LsirdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsirdyR { bits } } # [ doc = "Bit 0 - Internal low-speed oscillator enable" ] # [ inline ( always ) ] pub fn lsion ( & self ) -> LsionR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsionR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 234881024 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Low-power reset flag" ] # [ inline ( always ) ] pub fn lpwrrstf ( & mut self ) -> _LpwrrstfW { _LpwrrstfW { w : self } } # [ doc = "Bit 30 - Window watchdog reset flag" ] # [ inline ( always ) ] pub fn wwdgrstf ( & mut self ) -> _WwdgrstfW { _WwdgrstfW { w : self } } # [ doc = "Bit 29 - Independent watchdog reset flag" ] # [ inline ( always ) ] pub fn wdgrstf ( & mut self ) -> _WdgrstfW { _WdgrstfW { w : self } } # [ doc = "Bit 28 - Software reset flag" ] # [ inline ( always ) ] pub fn sftrstf ( & mut self ) -> _SftrstfW { _SftrstfW { w : self } } # [ doc = "Bit 27 - POR/PDR reset flag" ] # [ inline ( always ) ] pub fn porrstf ( & mut self ) -> _PorrstfW { _PorrstfW { w : self } } # [ doc = "Bit 26 - PIN reset flag" ] # [ inline ( always ) ] pub fn padrstf ( & mut self ) -> _PadrstfW { _PadrstfW { w : self } } # [ doc = "Bit 25 - BOR reset flag" ] # [ inline ( always ) ] pub fn borrstf ( & mut self ) -> _BorrstfW { _BorrstfW { w : self } } # [ doc = "Bit 24 - Remove reset flag" ] # [ inline ( always ) ] pub fn rmvf ( & mut self ) -> _RmvfW { _RmvfW { w : self } } # [ doc = "Bit 0 - Internal low-speed oscillator enable" ] # [ inline ( always ) ] pub fn lsion ( & mut self ) -> _LsionW { _LsionW { w : self } } } } # [ doc = "spread spectrum clock generation register" ] pub struct Sscgr { register : VolatileCell < u32 > } # [ doc = "spread spectrum clock generation register" ] pub mod sscgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sscgr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SscgenR { bits : u8 , } impl SscgenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SpreadselR { bits : u8 , } impl SpreadselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IncstepR { bits : u16 , } impl IncstepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ModperR { bits : u16 , } impl ModperR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _SscgenW < 'a > { w : & 'a mut W , } impl < 'a > _SscgenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SpreadselW < 'a > { w : & 'a mut W , } impl < 'a > _SpreadselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IncstepW < 'a > { w : & 'a mut W , } impl < 'a > _IncstepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 32767 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ModperW < 'a > { w : & 'a mut W , } impl < 'a > _ModperW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 8191 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - Spread spectrum modulation enable" ] # [ inline ( always ) ] pub fn sscgen ( & self ) -> SscgenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SscgenR { bits } } # [ doc = "Bit 30 - Spread Select" ] # [ inline ( always ) ] pub fn spreadsel ( & self ) -> SpreadselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SpreadselR { bits } } # [ doc = "Bits 13:27 - Incrementation step" ] # [ inline ( always ) ] pub fn incstep ( & self ) -> IncstepR { let bits = { const MASK : u16 = 32767 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IncstepR { bits } } # [ doc = "Bits 0:12 - Modulation period" ] # [ inline ( always ) ] pub fn modper ( & self ) -> ModperR { let bits = { const MASK : u16 = 8191 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ModperR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Spread spectrum modulation enable" ] # [ inline ( always ) ] pub fn sscgen ( & mut self ) -> _SscgenW { _SscgenW { w : self } } # [ doc = "Bit 30 - Spread Select" ] # [ inline ( always ) ] pub fn spreadsel ( & mut self ) -> _SpreadselW { _SpreadselW { w : self } } # [ doc = "Bits 13:27 - Incrementation step" ] # [ inline ( always ) ] pub fn incstep ( & mut self ) -> _IncstepW { _IncstepW { w : self } } # [ doc = "Bits 0:12 - Modulation period" ] # [ inline ( always ) ] pub fn modper ( & mut self ) -> _ModperW { _ModperW { w : self } } } } # [ doc = "PLLI2S configuration register" ] pub struct Plli2scfgr { register : VolatileCell < u32 > } # [ doc = "PLLI2S configuration register" ] pub mod plli2scfgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Plli2scfgr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Plli2srxR { bits : u8 , } impl Plli2srxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Plli2snxR { bits : u16 , } impl Plli2snxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Plli2srxW < 'a > { w : & 'a mut W , } impl < 'a > _Plli2srxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Plli2snxW < 'a > { w : & 'a mut W , } impl < 'a > _Plli2snxW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:30 - PLLI2S division factor for I2S clocks" ] # [ inline ( always ) ] pub fn plli2srx ( & self ) -> Plli2srxR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Plli2srxR { bits } } # [ doc = "Bits 6:14 - PLLI2S multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plli2snx ( & self ) -> Plli2snxR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Plli2snxR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 536883200 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:30 - PLLI2S division factor for I2S clocks" ] # [ inline ( always ) ] pub fn plli2srx ( & mut self ) -> _Plli2srxW { _Plli2srxW { w : self } } # [ doc = "Bits 6:14 - PLLI2S multiplication factor for VCO" ] # [ inline ( always ) ] pub fn plli2snx ( & mut self ) -> _Plli2snxW { _Plli2snxW { w : self } } } } } # [ doc = "Reset and clock control" ] pub struct Rcc { register_block : rcc :: RegisterBlock } impl Deref for Rcc { type Target = rcc :: RegisterBlock ; fn deref ( & self ) -> & rcc :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose I/Os" ] pub const GPIOI : Peripheral < Gpioi > = unsafe { Peripheral :: new ( 1073881088 ) } ; # [ doc = "General-purpose I/Os" ] pub mod gpioi { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - GPIO port mode register" ] pub moder : Moder , # [ doc = "0x04 - GPIO port output type register" ] pub otyper : Otyper , # [ doc = "0x08 - GPIO port output speed register" ] pub ospeedr : Ospeedr , # [ doc = "0x0c - GPIO port pull-up/pull-down register" ] pub pupdr : Pupdr , # [ doc = "0x10 - GPIO port input data register" ] pub idr : Idr , # [ doc = "0x14 - GPIO port output data register" ] pub odr : Odr , # [ doc = "0x18 - GPIO port bit set/reset register" ] pub bsrr : Bsrr , # [ doc = "0x1c - GPIO port configuration lock register" ] pub lckr : Lckr , # [ doc = "0x20 - GPIO alternate function low register" ] pub afrl : Afrl , # [ doc = "0x24 - GPIO alternate function high register" ] pub afrh : Afrh , } # [ doc = "GPIO port mode register" ] pub struct Moder { register : VolatileCell < u32 > } # [ doc = "GPIO port mode register" ] pub mod moder { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Moder { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Moder15R { bits : u8 , } impl Moder15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder14R { bits : u8 , } impl Moder14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder13R { bits : u8 , } impl Moder13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder12R { bits : u8 , } impl Moder12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder11R { bits : u8 , } impl Moder11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder10R { bits : u8 , } impl Moder10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder9R { bits : u8 , } impl Moder9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder8R { bits : u8 , } impl Moder8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder7R { bits : u8 , } impl Moder7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder6R { bits : u8 , } impl Moder6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder5R { bits : u8 , } impl Moder5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder4R { bits : u8 , } impl Moder4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder3R { bits : u8 , } impl Moder3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder2R { bits : u8 , } impl Moder2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder1R { bits : u8 , } impl Moder1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder0R { bits : u8 , } impl Moder0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Moder15W < 'a > { w : & 'a mut W , } impl < 'a > _Moder15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder14W < 'a > { w : & 'a mut W , } impl < 'a > _Moder14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder13W < 'a > { w : & 'a mut W , } impl < 'a > _Moder13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder12W < 'a > { w : & 'a mut W , } impl < 'a > _Moder12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder11W < 'a > { w : & 'a mut W , } impl < 'a > _Moder11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder10W < 'a > { w : & 'a mut W , } impl < 'a > _Moder10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder9W < 'a > { w : & 'a mut W , } impl < 'a > _Moder9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder8W < 'a > { w : & 'a mut W , } impl < 'a > _Moder8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder7W < 'a > { w : & 'a mut W , } impl < 'a > _Moder7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder6W < 'a > { w : & 'a mut W , } impl < 'a > _Moder6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder5W < 'a > { w : & 'a mut W , } impl < 'a > _Moder5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder4W < 'a > { w : & 'a mut W , } impl < 'a > _Moder4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder3W < 'a > { w : & 'a mut W , } impl < 'a > _Moder3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder2W < 'a > { w : & 'a mut W , } impl < 'a > _Moder2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder1W < 'a > { w : & 'a mut W , } impl < 'a > _Moder1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder0W < 'a > { w : & 'a mut W , } impl < 'a > _Moder0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & self ) -> Moder15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & self ) -> Moder14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & self ) -> Moder13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & self ) -> Moder12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & self ) -> Moder11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & self ) -> Moder10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & self ) -> Moder9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & self ) -> Moder8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & self ) -> Moder7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & self ) -> Moder6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & self ) -> Moder5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & self ) -> Moder4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & self ) -> Moder3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & self ) -> Moder2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & self ) -> Moder1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & self ) -> Moder0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & mut self ) -> _Moder15W { _Moder15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & mut self ) -> _Moder14W { _Moder14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & mut self ) -> _Moder13W { _Moder13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & mut self ) -> _Moder12W { _Moder12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & mut self ) -> _Moder11W { _Moder11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & mut self ) -> _Moder10W { _Moder10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & mut self ) -> _Moder9W { _Moder9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & mut self ) -> _Moder8W { _Moder8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & mut self ) -> _Moder7W { _Moder7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & mut self ) -> _Moder6W { _Moder6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & mut self ) -> _Moder5W { _Moder5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & mut self ) -> _Moder4W { _Moder4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & mut self ) -> _Moder3W { _Moder3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & mut self ) -> _Moder2W { _Moder2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & mut self ) -> _Moder1W { _Moder1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & mut self ) -> _Moder0W { _Moder0W { w : self } } } } # [ doc = "GPIO port output type register" ] pub struct Otyper { register : VolatileCell < u32 > } # [ doc = "GPIO port output type register" ] pub mod otyper { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Otyper { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ot15R { bits : u8 , } impl Ot15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot14R { bits : u8 , } impl Ot14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot13R { bits : u8 , } impl Ot13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot12R { bits : u8 , } impl Ot12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot11R { bits : u8 , } impl Ot11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot10R { bits : u8 , } impl Ot10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot9R { bits : u8 , } impl Ot9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot8R { bits : u8 , } impl Ot8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot7R { bits : u8 , } impl Ot7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot6R { bits : u8 , } impl Ot6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot5R { bits : u8 , } impl Ot5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot4R { bits : u8 , } impl Ot4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot3R { bits : u8 , } impl Ot3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot2R { bits : u8 , } impl Ot2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot1R { bits : u8 , } impl Ot1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot0R { bits : u8 , } impl Ot0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ot15W < 'a > { w : & 'a mut W , } impl < 'a > _Ot15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot14W < 'a > { w : & 'a mut W , } impl < 'a > _Ot14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot13W < 'a > { w : & 'a mut W , } impl < 'a > _Ot13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot12W < 'a > { w : & 'a mut W , } impl < 'a > _Ot12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot11W < 'a > { w : & 'a mut W , } impl < 'a > _Ot11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot10W < 'a > { w : & 'a mut W , } impl < 'a > _Ot10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot9W < 'a > { w : & 'a mut W , } impl < 'a > _Ot9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot8W < 'a > { w : & 'a mut W , } impl < 'a > _Ot8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot7W < 'a > { w : & 'a mut W , } impl < 'a > _Ot7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot6W < 'a > { w : & 'a mut W , } impl < 'a > _Ot6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot5W < 'a > { w : & 'a mut W , } impl < 'a > _Ot5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot4W < 'a > { w : & 'a mut W , } impl < 'a > _Ot4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot3W < 'a > { w : & 'a mut W , } impl < 'a > _Ot3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot2W < 'a > { w : & 'a mut W , } impl < 'a > _Ot2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot1W < 'a > { w : & 'a mut W , } impl < 'a > _Ot1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot0W < 'a > { w : & 'a mut W , } impl < 'a > _Ot0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & self ) -> Ot15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot15R { bits } } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & self ) -> Ot14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot14R { bits } } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & self ) -> Ot13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot13R { bits } } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & self ) -> Ot12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot12R { bits } } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & self ) -> Ot11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot11R { bits } } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & self ) -> Ot10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot10R { bits } } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & self ) -> Ot9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot9R { bits } } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & self ) -> Ot8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot8R { bits } } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & self ) -> Ot7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot7R { bits } } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & self ) -> Ot6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot6R { bits } } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & self ) -> Ot5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot5R { bits } } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & self ) -> Ot4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot4R { bits } } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & self ) -> Ot3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot3R { bits } } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & self ) -> Ot2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot2R { bits } } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & self ) -> Ot1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot1R { bits } } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & self ) -> Ot0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & mut self ) -> _Ot15W { _Ot15W { w : self } } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & mut self ) -> _Ot14W { _Ot14W { w : self } } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & mut self ) -> _Ot13W { _Ot13W { w : self } } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & mut self ) -> _Ot12W { _Ot12W { w : self } } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & mut self ) -> _Ot11W { _Ot11W { w : self } } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & mut self ) -> _Ot10W { _Ot10W { w : self } } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & mut self ) -> _Ot9W { _Ot9W { w : self } } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & mut self ) -> _Ot8W { _Ot8W { w : self } } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & mut self ) -> _Ot7W { _Ot7W { w : self } } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & mut self ) -> _Ot6W { _Ot6W { w : self } } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & mut self ) -> _Ot5W { _Ot5W { w : self } } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & mut self ) -> _Ot4W { _Ot4W { w : self } } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & mut self ) -> _Ot3W { _Ot3W { w : self } } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & mut self ) -> _Ot2W { _Ot2W { w : self } } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & mut self ) -> _Ot1W { _Ot1W { w : self } } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & mut self ) -> _Ot0W { _Ot0W { w : self } } } } # [ doc = "GPIO port output speed register" ] pub struct Ospeedr { register : VolatileCell < u32 > } # [ doc = "GPIO port output speed register" ] pub mod ospeedr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ospeedr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ospeedr15R { bits : u8 , } impl Ospeedr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr14R { bits : u8 , } impl Ospeedr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr13R { bits : u8 , } impl Ospeedr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr12R { bits : u8 , } impl Ospeedr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr11R { bits : u8 , } impl Ospeedr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr10R { bits : u8 , } impl Ospeedr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr9R { bits : u8 , } impl Ospeedr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr8R { bits : u8 , } impl Ospeedr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr7R { bits : u8 , } impl Ospeedr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr6R { bits : u8 , } impl Ospeedr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr5R { bits : u8 , } impl Ospeedr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr4R { bits : u8 , } impl Ospeedr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr3R { bits : u8 , } impl Ospeedr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr2R { bits : u8 , } impl Ospeedr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr1R { bits : u8 , } impl Ospeedr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr0R { bits : u8 , } impl Ospeedr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ospeedr15W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr14W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr13W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr12W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr11W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr10W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr9W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr8W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr7W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr6W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr5W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr4W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr3W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr2W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr0W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & self ) -> Ospeedr15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & self ) -> Ospeedr14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & self ) -> Ospeedr13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & self ) -> Ospeedr12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & self ) -> Ospeedr11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & self ) -> Ospeedr10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & self ) -> Ospeedr9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & self ) -> Ospeedr8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & self ) -> Ospeedr7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & self ) -> Ospeedr6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & self ) -> Ospeedr5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & self ) -> Ospeedr4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & self ) -> Ospeedr3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & self ) -> Ospeedr2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & self ) -> Ospeedr1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & self ) -> Ospeedr0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & mut self ) -> _Ospeedr15W { _Ospeedr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & mut self ) -> _Ospeedr14W { _Ospeedr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & mut self ) -> _Ospeedr13W { _Ospeedr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & mut self ) -> _Ospeedr12W { _Ospeedr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & mut self ) -> _Ospeedr11W { _Ospeedr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & mut self ) -> _Ospeedr10W { _Ospeedr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & mut self ) -> _Ospeedr9W { _Ospeedr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & mut self ) -> _Ospeedr8W { _Ospeedr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & mut self ) -> _Ospeedr7W { _Ospeedr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & mut self ) -> _Ospeedr6W { _Ospeedr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & mut self ) -> _Ospeedr5W { _Ospeedr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & mut self ) -> _Ospeedr4W { _Ospeedr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & mut self ) -> _Ospeedr3W { _Ospeedr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & mut self ) -> _Ospeedr2W { _Ospeedr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & mut self ) -> _Ospeedr1W { _Ospeedr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & mut self ) -> _Ospeedr0W { _Ospeedr0W { w : self } } } } # [ doc = "GPIO port pull-up/pull-down register" ] pub struct Pupdr { register : VolatileCell < u32 > } # [ doc = "GPIO port pull-up/pull-down register" ] pub mod pupdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pupdr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Pupdr15R { bits : u8 , } impl Pupdr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr14R { bits : u8 , } impl Pupdr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr13R { bits : u8 , } impl Pupdr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr12R { bits : u8 , } impl Pupdr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr11R { bits : u8 , } impl Pupdr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr10R { bits : u8 , } impl Pupdr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr9R { bits : u8 , } impl Pupdr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr8R { bits : u8 , } impl Pupdr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr7R { bits : u8 , } impl Pupdr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr6R { bits : u8 , } impl Pupdr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr5R { bits : u8 , } impl Pupdr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr4R { bits : u8 , } impl Pupdr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr3R { bits : u8 , } impl Pupdr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr2R { bits : u8 , } impl Pupdr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr1R { bits : u8 , } impl Pupdr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr0R { bits : u8 , } impl Pupdr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Pupdr15W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr14W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr13W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr12W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr11W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr10W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr9W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr8W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr7W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr6W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr5W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr4W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr3W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr2W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr1W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr0W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & self ) -> Pupdr15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & self ) -> Pupdr14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & self ) -> Pupdr13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & self ) -> Pupdr12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & self ) -> Pupdr11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & self ) -> Pupdr10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & self ) -> Pupdr9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & self ) -> Pupdr8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & self ) -> Pupdr7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & self ) -> Pupdr6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & self ) -> Pupdr5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & self ) -> Pupdr4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & self ) -> Pupdr3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & self ) -> Pupdr2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & self ) -> Pupdr1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & self ) -> Pupdr0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & mut self ) -> _Pupdr15W { _Pupdr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & mut self ) -> _Pupdr14W { _Pupdr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & mut self ) -> _Pupdr13W { _Pupdr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & mut self ) -> _Pupdr12W { _Pupdr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & mut self ) -> _Pupdr11W { _Pupdr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & mut self ) -> _Pupdr10W { _Pupdr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & mut self ) -> _Pupdr9W { _Pupdr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & mut self ) -> _Pupdr8W { _Pupdr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & mut self ) -> _Pupdr7W { _Pupdr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & mut self ) -> _Pupdr6W { _Pupdr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & mut self ) -> _Pupdr5W { _Pupdr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & mut self ) -> _Pupdr4W { _Pupdr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & mut self ) -> _Pupdr3W { _Pupdr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & mut self ) -> _Pupdr2W { _Pupdr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & mut self ) -> _Pupdr1W { _Pupdr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & mut self ) -> _Pupdr0W { _Pupdr0W { w : self } } } } # [ doc = "GPIO port input data register" ] pub struct Idr { register : VolatileCell < u32 > } # [ doc = "GPIO port input data register" ] pub mod idr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Idr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Idr15R { bits : u8 , } impl Idr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr14R { bits : u8 , } impl Idr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr13R { bits : u8 , } impl Idr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr12R { bits : u8 , } impl Idr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr11R { bits : u8 , } impl Idr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr10R { bits : u8 , } impl Idr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr9R { bits : u8 , } impl Idr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr8R { bits : u8 , } impl Idr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr7R { bits : u8 , } impl Idr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr6R { bits : u8 , } impl Idr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr5R { bits : u8 , } impl Idr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr4R { bits : u8 , } impl Idr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr3R { bits : u8 , } impl Idr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr2R { bits : u8 , } impl Idr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr1R { bits : u8 , } impl Idr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr0R { bits : u8 , } impl Idr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr15 ( & self ) -> Idr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr15R { bits } } # [ doc = "Bit 14 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr14 ( & self ) -> Idr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr14R { bits } } # [ doc = "Bit 13 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr13 ( & self ) -> Idr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr13R { bits } } # [ doc = "Bit 12 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr12 ( & self ) -> Idr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr12R { bits } } # [ doc = "Bit 11 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr11 ( & self ) -> Idr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr11R { bits } } # [ doc = "Bit 10 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr10 ( & self ) -> Idr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr10R { bits } } # [ doc = "Bit 9 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr9 ( & self ) -> Idr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr9R { bits } } # [ doc = "Bit 8 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr8 ( & self ) -> Idr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr8R { bits } } # [ doc = "Bit 7 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr7 ( & self ) -> Idr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr7R { bits } } # [ doc = "Bit 6 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr6 ( & self ) -> Idr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr6R { bits } } # [ doc = "Bit 5 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr5 ( & self ) -> Idr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr5R { bits } } # [ doc = "Bit 4 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr4 ( & self ) -> Idr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr4R { bits } } # [ doc = "Bit 3 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr3 ( & self ) -> Idr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr3R { bits } } # [ doc = "Bit 2 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr2 ( & self ) -> Idr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr2R { bits } } # [ doc = "Bit 1 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr1 ( & self ) -> Idr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr1R { bits } } # [ doc = "Bit 0 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr0 ( & self ) -> Idr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr0R { bits } } } } # [ doc = "GPIO port output data register" ] pub struct Odr { register : VolatileCell < u32 > } # [ doc = "GPIO port output data register" ] pub mod odr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Odr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Odr15R { bits : u8 , } impl Odr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr14R { bits : u8 , } impl Odr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr13R { bits : u8 , } impl Odr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr12R { bits : u8 , } impl Odr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr11R { bits : u8 , } impl Odr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr10R { bits : u8 , } impl Odr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr9R { bits : u8 , } impl Odr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr8R { bits : u8 , } impl Odr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr7R { bits : u8 , } impl Odr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr6R { bits : u8 , } impl Odr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr5R { bits : u8 , } impl Odr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr4R { bits : u8 , } impl Odr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr3R { bits : u8 , } impl Odr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr2R { bits : u8 , } impl Odr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr1R { bits : u8 , } impl Odr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr0R { bits : u8 , } impl Odr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Odr15W < 'a > { w : & 'a mut W , } impl < 'a > _Odr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr14W < 'a > { w : & 'a mut W , } impl < 'a > _Odr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr13W < 'a > { w : & 'a mut W , } impl < 'a > _Odr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr12W < 'a > { w : & 'a mut W , } impl < 'a > _Odr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr11W < 'a > { w : & 'a mut W , } impl < 'a > _Odr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr10W < 'a > { w : & 'a mut W , } impl < 'a > _Odr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr9W < 'a > { w : & 'a mut W , } impl < 'a > _Odr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr8W < 'a > { w : & 'a mut W , } impl < 'a > _Odr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr7W < 'a > { w : & 'a mut W , } impl < 'a > _Odr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr6W < 'a > { w : & 'a mut W , } impl < 'a > _Odr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr5W < 'a > { w : & 'a mut W , } impl < 'a > _Odr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr4W < 'a > { w : & 'a mut W , } impl < 'a > _Odr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr3W < 'a > { w : & 'a mut W , } impl < 'a > _Odr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr2W < 'a > { w : & 'a mut W , } impl < 'a > _Odr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr1W < 'a > { w : & 'a mut W , } impl < 'a > _Odr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr0W < 'a > { w : & 'a mut W , } impl < 'a > _Odr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & self ) -> Odr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr15R { bits } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & self ) -> Odr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr14R { bits } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & self ) -> Odr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr13R { bits } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & self ) -> Odr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr12R { bits } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & self ) -> Odr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr11R { bits } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & self ) -> Odr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr10R { bits } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & self ) -> Odr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr9R { bits } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & self ) -> Odr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr8R { bits } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & self ) -> Odr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr7R { bits } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & self ) -> Odr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr6R { bits } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & self ) -> Odr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr5R { bits } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & self ) -> Odr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr4R { bits } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & self ) -> Odr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr3R { bits } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & self ) -> Odr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr2R { bits } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & self ) -> Odr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr1R { bits } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & self ) -> Odr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & mut self ) -> _Odr15W { _Odr15W { w : self } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & mut self ) -> _Odr14W { _Odr14W { w : self } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & mut self ) -> _Odr13W { _Odr13W { w : self } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & mut self ) -> _Odr12W { _Odr12W { w : self } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & mut self ) -> _Odr11W { _Odr11W { w : self } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & mut self ) -> _Odr10W { _Odr10W { w : self } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & mut self ) -> _Odr9W { _Odr9W { w : self } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & mut self ) -> _Odr8W { _Odr8W { w : self } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & mut self ) -> _Odr7W { _Odr7W { w : self } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & mut self ) -> _Odr6W { _Odr6W { w : self } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & mut self ) -> _Odr5W { _Odr5W { w : self } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & mut self ) -> _Odr4W { _Odr4W { w : self } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & mut self ) -> _Odr3W { _Odr3W { w : self } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & mut self ) -> _Odr2W { _Odr2W { w : self } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & mut self ) -> _Odr1W { _Odr1W { w : self } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & mut self ) -> _Odr0W { _Odr0W { w : self } } } } # [ doc = "GPIO port bit set/reset register" ] pub struct Bsrr { register : VolatileCell < u32 > } # [ doc = "GPIO port bit set/reset register" ] pub mod bsrr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bsrr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Br15W < 'a > { w : & 'a mut W , } impl < 'a > _Br15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br14W < 'a > { w : & 'a mut W , } impl < 'a > _Br14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br13W < 'a > { w : & 'a mut W , } impl < 'a > _Br13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br12W < 'a > { w : & 'a mut W , } impl < 'a > _Br12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br11W < 'a > { w : & 'a mut W , } impl < 'a > _Br11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br10W < 'a > { w : & 'a mut W , } impl < 'a > _Br10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br9W < 'a > { w : & 'a mut W , } impl < 'a > _Br9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br8W < 'a > { w : & 'a mut W , } impl < 'a > _Br8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br7W < 'a > { w : & 'a mut W , } impl < 'a > _Br7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br6W < 'a > { w : & 'a mut W , } impl < 'a > _Br6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br5W < 'a > { w : & 'a mut W , } impl < 'a > _Br5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br4W < 'a > { w : & 'a mut W , } impl < 'a > _Br4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br3W < 'a > { w : & 'a mut W , } impl < 'a > _Br3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br2W < 'a > { w : & 'a mut W , } impl < 'a > _Br2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br1W < 'a > { w : & 'a mut W , } impl < 'a > _Br1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br0W < 'a > { w : & 'a mut W , } impl < 'a > _Br0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs15W < 'a > { w : & 'a mut W , } impl < 'a > _Bs15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs14W < 'a > { w : & 'a mut W , } impl < 'a > _Bs14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs13W < 'a > { w : & 'a mut W , } impl < 'a > _Bs13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs12W < 'a > { w : & 'a mut W , } impl < 'a > _Bs12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs11W < 'a > { w : & 'a mut W , } impl < 'a > _Bs11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs10W < 'a > { w : & 'a mut W , } impl < 'a > _Bs10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs9W < 'a > { w : & 'a mut W , } impl < 'a > _Bs9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs8W < 'a > { w : & 'a mut W , } impl < 'a > _Bs8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs7W < 'a > { w : & 'a mut W , } impl < 'a > _Bs7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs6W < 'a > { w : & 'a mut W , } impl < 'a > _Bs6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs5W < 'a > { w : & 'a mut W , } impl < 'a > _Bs5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs4W < 'a > { w : & 'a mut W , } impl < 'a > _Bs4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs3W < 'a > { w : & 'a mut W , } impl < 'a > _Bs3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs2W < 'a > { w : & 'a mut W , } impl < 'a > _Bs2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs1W < 'a > { w : & 'a mut W , } impl < 'a > _Bs1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs0W < 'a > { w : & 'a mut W , } impl < 'a > _Bs0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br15 ( & mut self ) -> _Br15W { _Br15W { w : self } } # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br14 ( & mut self ) -> _Br14W { _Br14W { w : self } } # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br13 ( & mut self ) -> _Br13W { _Br13W { w : self } } # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br12 ( & mut self ) -> _Br12W { _Br12W { w : self } } # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br11 ( & mut self ) -> _Br11W { _Br11W { w : self } } # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br10 ( & mut self ) -> _Br10W { _Br10W { w : self } } # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br9 ( & mut self ) -> _Br9W { _Br9W { w : self } } # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br8 ( & mut self ) -> _Br8W { _Br8W { w : self } } # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br7 ( & mut self ) -> _Br7W { _Br7W { w : self } } # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br6 ( & mut self ) -> _Br6W { _Br6W { w : self } } # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br5 ( & mut self ) -> _Br5W { _Br5W { w : self } } # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br4 ( & mut self ) -> _Br4W { _Br4W { w : self } } # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br3 ( & mut self ) -> _Br3W { _Br3W { w : self } } # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br2 ( & mut self ) -> _Br2W { _Br2W { w : self } } # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br1 ( & mut self ) -> _Br1W { _Br1W { w : self } } # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn br0 ( & mut self ) -> _Br0W { _Br0W { w : self } } # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs15 ( & mut self ) -> _Bs15W { _Bs15W { w : self } } # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs14 ( & mut self ) -> _Bs14W { _Bs14W { w : self } } # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs13 ( & mut self ) -> _Bs13W { _Bs13W { w : self } } # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs12 ( & mut self ) -> _Bs12W { _Bs12W { w : self } } # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs11 ( & mut self ) -> _Bs11W { _Bs11W { w : self } } # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs10 ( & mut self ) -> _Bs10W { _Bs10W { w : self } } # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs9 ( & mut self ) -> _Bs9W { _Bs9W { w : self } } # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs8 ( & mut self ) -> _Bs8W { _Bs8W { w : self } } # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs7 ( & mut self ) -> _Bs7W { _Bs7W { w : self } } # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs6 ( & mut self ) -> _Bs6W { _Bs6W { w : self } } # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs5 ( & mut self ) -> _Bs5W { _Bs5W { w : self } } # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs4 ( & mut self ) -> _Bs4W { _Bs4W { w : self } } # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs3 ( & mut self ) -> _Bs3W { _Bs3W { w : self } } # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs2 ( & mut self ) -> _Bs2W { _Bs2W { w : self } } # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs1 ( & mut self ) -> _Bs1W { _Bs1W { w : self } } # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs0 ( & mut self ) -> _Bs0W { _Bs0W { w : self } } } } # [ doc = "GPIO port configuration lock register" ] pub struct Lckr { register : VolatileCell < u32 > } # [ doc = "GPIO port configuration lock register" ] pub mod lckr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Lckr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LckkR { bits : u8 , } impl LckkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck15R { bits : u8 , } impl Lck15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck14R { bits : u8 , } impl Lck14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck13R { bits : u8 , } impl Lck13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck12R { bits : u8 , } impl Lck12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck11R { bits : u8 , } impl Lck11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck10R { bits : u8 , } impl Lck10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck9R { bits : u8 , } impl Lck9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck8R { bits : u8 , } impl Lck8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck7R { bits : u8 , } impl Lck7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck6R { bits : u8 , } impl Lck6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck5R { bits : u8 , } impl Lck5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck4R { bits : u8 , } impl Lck4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck3R { bits : u8 , } impl Lck3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck2R { bits : u8 , } impl Lck2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck1R { bits : u8 , } impl Lck1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck0R { bits : u8 , } impl Lck0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LckkW < 'a > { w : & 'a mut W , } impl < 'a > _LckkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck15W < 'a > { w : & 'a mut W , } impl < 'a > _Lck15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck14W < 'a > { w : & 'a mut W , } impl < 'a > _Lck14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck13W < 'a > { w : & 'a mut W , } impl < 'a > _Lck13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck12W < 'a > { w : & 'a mut W , } impl < 'a > _Lck12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck11W < 'a > { w : & 'a mut W , } impl < 'a > _Lck11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck10W < 'a > { w : & 'a mut W , } impl < 'a > _Lck10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck9W < 'a > { w : & 'a mut W , } impl < 'a > _Lck9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck8W < 'a > { w : & 'a mut W , } impl < 'a > _Lck8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck7W < 'a > { w : & 'a mut W , } impl < 'a > _Lck7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck6W < 'a > { w : & 'a mut W , } impl < 'a > _Lck6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck5W < 'a > { w : & 'a mut W , } impl < 'a > _Lck5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck4W < 'a > { w : & 'a mut W , } impl < 'a > _Lck4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck3W < 'a > { w : & 'a mut W , } impl < 'a > _Lck3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck2W < 'a > { w : & 'a mut W , } impl < 'a > _Lck2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck1W < 'a > { w : & 'a mut W , } impl < 'a > _Lck1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck0W < 'a > { w : & 'a mut W , } impl < 'a > _Lck0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & self ) -> LckkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LckkR { bits } } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & self ) -> Lck15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck15R { bits } } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & self ) -> Lck14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck14R { bits } } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & self ) -> Lck13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck13R { bits } } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & self ) -> Lck12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck12R { bits } } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & self ) -> Lck11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck11R { bits } } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & self ) -> Lck10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck10R { bits } } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & self ) -> Lck9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck9R { bits } } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & self ) -> Lck8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck8R { bits } } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & self ) -> Lck7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck7R { bits } } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & self ) -> Lck6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck6R { bits } } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & self ) -> Lck5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck5R { bits } } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & self ) -> Lck4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck4R { bits } } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & self ) -> Lck3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck3R { bits } } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & self ) -> Lck2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck2R { bits } } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & self ) -> Lck1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck1R { bits } } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & self ) -> Lck0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & mut self ) -> _LckkW { _LckkW { w : self } } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & mut self ) -> _Lck15W { _Lck15W { w : self } } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & mut self ) -> _Lck14W { _Lck14W { w : self } } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & mut self ) -> _Lck13W { _Lck13W { w : self } } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & mut self ) -> _Lck12W { _Lck12W { w : self } } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & mut self ) -> _Lck11W { _Lck11W { w : self } } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & mut self ) -> _Lck10W { _Lck10W { w : self } } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & mut self ) -> _Lck9W { _Lck9W { w : self } } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & mut self ) -> _Lck8W { _Lck8W { w : self } } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & mut self ) -> _Lck7W { _Lck7W { w : self } } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & mut self ) -> _Lck6W { _Lck6W { w : self } } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & mut self ) -> _Lck5W { _Lck5W { w : self } } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & mut self ) -> _Lck4W { _Lck4W { w : self } } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & mut self ) -> _Lck3W { _Lck3W { w : self } } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & mut self ) -> _Lck2W { _Lck2W { w : self } } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & mut self ) -> _Lck1W { _Lck1W { w : self } } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & mut self ) -> _Lck0W { _Lck0W { w : self } } } } # [ doc = "GPIO alternate function low register" ] pub struct Afrl { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function low register" ] pub mod afrl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Afrl7R { bits : u8 , } impl Afrl7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl6R { bits : u8 , } impl Afrl6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl5R { bits : u8 , } impl Afrl5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl4R { bits : u8 , } impl Afrl4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl3R { bits : u8 , } impl Afrl3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl2R { bits : u8 , } impl Afrl2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl1R { bits : u8 , } impl Afrl1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl0R { bits : u8 , } impl Afrl0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Afrl7W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl6W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl5W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl4W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl3W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl2W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl1W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl0W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & self ) -> Afrl7R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl7R { bits } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & self ) -> Afrl6R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl6R { bits } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & self ) -> Afrl5R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl5R { bits } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & self ) -> Afrl4R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl4R { bits } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & self ) -> Afrl3R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl3R { bits } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & self ) -> Afrl2R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl2R { bits } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & self ) -> Afrl1R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl1R { bits } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & self ) -> Afrl0R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & mut self ) -> _Afrl7W { _Afrl7W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & mut self ) -> _Afrl6W { _Afrl6W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & mut self ) -> _Afrl5W { _Afrl5W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & mut self ) -> _Afrl4W { _Afrl4W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & mut self ) -> _Afrl3W { _Afrl3W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & mut self ) -> _Afrl2W { _Afrl2W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & mut self ) -> _Afrl1W { _Afrl1W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & mut self ) -> _Afrl0W { _Afrl0W { w : self } } } } # [ doc = "GPIO alternate function high register" ] pub struct Afrh { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function high register" ] pub mod afrh { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrh { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Afrh15R { bits : u8 , } impl Afrh15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh14R { bits : u8 , } impl Afrh14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh13R { bits : u8 , } impl Afrh13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh12R { bits : u8 , } impl Afrh12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh11R { bits : u8 , } impl Afrh11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh10R { bits : u8 , } impl Afrh10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh9R { bits : u8 , } impl Afrh9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh8R { bits : u8 , } impl Afrh8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Afrh15W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh14W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh13W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh12W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh11W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh10W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh9W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh8W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & self ) -> Afrh15R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh15R { bits } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & self ) -> Afrh14R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh14R { bits } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & self ) -> Afrh13R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh13R { bits } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & self ) -> Afrh12R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh12R { bits } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & self ) -> Afrh11R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh11R { bits } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & self ) -> Afrh10R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh10R { bits } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & self ) -> Afrh9R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh9R { bits } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & self ) -> Afrh8R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh8R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & mut self ) -> _Afrh15W { _Afrh15W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & mut self ) -> _Afrh14W { _Afrh14W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & mut self ) -> _Afrh13W { _Afrh13W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & mut self ) -> _Afrh12W { _Afrh12W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & mut self ) -> _Afrh11W { _Afrh11W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & mut self ) -> _Afrh10W { _Afrh10W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & mut self ) -> _Afrh9W { _Afrh9W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & mut self ) -> _Afrh8W { _Afrh8W { w : self } } } } } # [ doc = "General-purpose I/Os" ] pub struct Gpioi { register_block : gpioi :: RegisterBlock } impl Deref for Gpioi { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOH" ] pub const GPIOH : Peripheral < Gpioh > = unsafe { Peripheral :: new ( 1073880064 ) } ; # [ doc = r" Register block" ] pub struct Gpioh { register_block : gpioi :: RegisterBlock } impl Deref for Gpioh { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOG" ] pub const GPIOG : Peripheral < Gpiog > = unsafe { Peripheral :: new ( 1073879040 ) } ; # [ doc = r" Register block" ] pub struct Gpiog { register_block : gpioi :: RegisterBlock } impl Deref for Gpiog { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOF" ] pub const GPIOF : Peripheral < Gpiof > = unsafe { Peripheral :: new ( 1073878016 ) } ; # [ doc = r" Register block" ] pub struct Gpiof { register_block : gpioi :: RegisterBlock } impl Deref for Gpiof { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOE" ] pub const GPIOE : Peripheral < Gpioe > = unsafe { Peripheral :: new ( 1073876992 ) } ; # [ doc = r" Register block" ] pub struct Gpioe { register_block : gpioi :: RegisterBlock } impl Deref for Gpioe { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOD" ] pub const GPIOD : Peripheral < Gpiod > = unsafe { Peripheral :: new ( 1073875968 ) } ; # [ doc = r" Register block" ] pub struct Gpiod { register_block : gpioi :: RegisterBlock } impl Deref for Gpiod { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "GPIOC" ] pub const GPIOC : Peripheral < Gpioc > = unsafe { Peripheral :: new ( 1073874944 ) } ; # [ doc = r" Register block" ] pub struct Gpioc { register_block : gpioi :: RegisterBlock } impl Deref for Gpioc { type Target = gpioi :: RegisterBlock ; fn deref ( & self ) -> & gpioi :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose I/Os" ] pub const GPIOB : Peripheral < Gpiob > = unsafe { Peripheral :: new ( 1073873920 ) } ; # [ doc = "General-purpose I/Os" ] pub mod gpiob { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - GPIO port mode register" ] pub moder : Moder , # [ doc = "0x04 - GPIO port output type register" ] pub otyper : Otyper , # [ doc = "0x08 - GPIO port output speed register" ] pub ospeedr : Ospeedr , # [ doc = "0x0c - GPIO port pull-up/pull-down register" ] pub pupdr : Pupdr , # [ doc = "0x10 - GPIO port input data register" ] pub idr : Idr , # [ doc = "0x14 - GPIO port output data register" ] pub odr : Odr , # [ doc = "0x18 - GPIO port bit set/reset register" ] pub bsrr : Bsrr , # [ doc = "0x1c - GPIO port configuration lock register" ] pub lckr : Lckr , # [ doc = "0x20 - GPIO alternate function low register" ] pub afrl : Afrl , # [ doc = "0x24 - GPIO alternate function high register" ] pub afrh : Afrh , } # [ doc = "GPIO port mode register" ] pub struct Moder { register : VolatileCell < u32 > } # [ doc = "GPIO port mode register" ] pub mod moder { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Moder { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Moder15R { bits : u8 , } impl Moder15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder14R { bits : u8 , } impl Moder14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder13R { bits : u8 , } impl Moder13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder12R { bits : u8 , } impl Moder12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder11R { bits : u8 , } impl Moder11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder10R { bits : u8 , } impl Moder10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder9R { bits : u8 , } impl Moder9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder8R { bits : u8 , } impl Moder8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder7R { bits : u8 , } impl Moder7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder6R { bits : u8 , } impl Moder6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder5R { bits : u8 , } impl Moder5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder4R { bits : u8 , } impl Moder4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder3R { bits : u8 , } impl Moder3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder2R { bits : u8 , } impl Moder2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder1R { bits : u8 , } impl Moder1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Moder0R { bits : u8 , } impl Moder0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Moder15W < 'a > { w : & 'a mut W , } impl < 'a > _Moder15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder14W < 'a > { w : & 'a mut W , } impl < 'a > _Moder14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder13W < 'a > { w : & 'a mut W , } impl < 'a > _Moder13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder12W < 'a > { w : & 'a mut W , } impl < 'a > _Moder12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder11W < 'a > { w : & 'a mut W , } impl < 'a > _Moder11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder10W < 'a > { w : & 'a mut W , } impl < 'a > _Moder10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder9W < 'a > { w : & 'a mut W , } impl < 'a > _Moder9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder8W < 'a > { w : & 'a mut W , } impl < 'a > _Moder8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder7W < 'a > { w : & 'a mut W , } impl < 'a > _Moder7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder6W < 'a > { w : & 'a mut W , } impl < 'a > _Moder6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder5W < 'a > { w : & 'a mut W , } impl < 'a > _Moder5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder4W < 'a > { w : & 'a mut W , } impl < 'a > _Moder4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder3W < 'a > { w : & 'a mut W , } impl < 'a > _Moder3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder2W < 'a > { w : & 'a mut W , } impl < 'a > _Moder2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder1W < 'a > { w : & 'a mut W , } impl < 'a > _Moder1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Moder0W < 'a > { w : & 'a mut W , } impl < 'a > _Moder0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & self ) -> Moder15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & self ) -> Moder14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & self ) -> Moder13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & self ) -> Moder12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & self ) -> Moder11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & self ) -> Moder10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & self ) -> Moder9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & self ) -> Moder8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & self ) -> Moder7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & self ) -> Moder6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & self ) -> Moder5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & self ) -> Moder4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & self ) -> Moder3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & self ) -> Moder2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & self ) -> Moder1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & self ) -> Moder0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Moder0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 640 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & mut self ) -> _Moder15W { _Moder15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & mut self ) -> _Moder14W { _Moder14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & mut self ) -> _Moder13W { _Moder13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & mut self ) -> _Moder12W { _Moder12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & mut self ) -> _Moder11W { _Moder11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & mut self ) -> _Moder10W { _Moder10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & mut self ) -> _Moder9W { _Moder9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & mut self ) -> _Moder8W { _Moder8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & mut self ) -> _Moder7W { _Moder7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & mut self ) -> _Moder6W { _Moder6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & mut self ) -> _Moder5W { _Moder5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & mut self ) -> _Moder4W { _Moder4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & mut self ) -> _Moder3W { _Moder3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & mut self ) -> _Moder2W { _Moder2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & mut self ) -> _Moder1W { _Moder1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & mut self ) -> _Moder0W { _Moder0W { w : self } } } } # [ doc = "GPIO port output type register" ] pub struct Otyper { register : VolatileCell < u32 > } # [ doc = "GPIO port output type register" ] pub mod otyper { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Otyper { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ot15R { bits : u8 , } impl Ot15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot14R { bits : u8 , } impl Ot14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot13R { bits : u8 , } impl Ot13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot12R { bits : u8 , } impl Ot12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot11R { bits : u8 , } impl Ot11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot10R { bits : u8 , } impl Ot10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot9R { bits : u8 , } impl Ot9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot8R { bits : u8 , } impl Ot8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot7R { bits : u8 , } impl Ot7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot6R { bits : u8 , } impl Ot6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot5R { bits : u8 , } impl Ot5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot4R { bits : u8 , } impl Ot4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot3R { bits : u8 , } impl Ot3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot2R { bits : u8 , } impl Ot2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot1R { bits : u8 , } impl Ot1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ot0R { bits : u8 , } impl Ot0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ot15W < 'a > { w : & 'a mut W , } impl < 'a > _Ot15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot14W < 'a > { w : & 'a mut W , } impl < 'a > _Ot14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot13W < 'a > { w : & 'a mut W , } impl < 'a > _Ot13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot12W < 'a > { w : & 'a mut W , } impl < 'a > _Ot12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot11W < 'a > { w : & 'a mut W , } impl < 'a > _Ot11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot10W < 'a > { w : & 'a mut W , } impl < 'a > _Ot10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot9W < 'a > { w : & 'a mut W , } impl < 'a > _Ot9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot8W < 'a > { w : & 'a mut W , } impl < 'a > _Ot8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot7W < 'a > { w : & 'a mut W , } impl < 'a > _Ot7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot6W < 'a > { w : & 'a mut W , } impl < 'a > _Ot6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot5W < 'a > { w : & 'a mut W , } impl < 'a > _Ot5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot4W < 'a > { w : & 'a mut W , } impl < 'a > _Ot4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot3W < 'a > { w : & 'a mut W , } impl < 'a > _Ot3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot2W < 'a > { w : & 'a mut W , } impl < 'a > _Ot2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot1W < 'a > { w : & 'a mut W , } impl < 'a > _Ot1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ot0W < 'a > { w : & 'a mut W , } impl < 'a > _Ot0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & self ) -> Ot15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot15R { bits } } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & self ) -> Ot14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot14R { bits } } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & self ) -> Ot13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot13R { bits } } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & self ) -> Ot12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot12R { bits } } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & self ) -> Ot11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot11R { bits } } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & self ) -> Ot10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot10R { bits } } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & self ) -> Ot9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot9R { bits } } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & self ) -> Ot8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot8R { bits } } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & self ) -> Ot7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot7R { bits } } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & self ) -> Ot6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot6R { bits } } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & self ) -> Ot5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot5R { bits } } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & self ) -> Ot4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot4R { bits } } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & self ) -> Ot3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot3R { bits } } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & self ) -> Ot2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot2R { bits } } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & self ) -> Ot1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot1R { bits } } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & self ) -> Ot0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ot0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & mut self ) -> _Ot15W { _Ot15W { w : self } } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & mut self ) -> _Ot14W { _Ot14W { w : self } } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & mut self ) -> _Ot13W { _Ot13W { w : self } } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & mut self ) -> _Ot12W { _Ot12W { w : self } } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & mut self ) -> _Ot11W { _Ot11W { w : self } } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & mut self ) -> _Ot10W { _Ot10W { w : self } } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & mut self ) -> _Ot9W { _Ot9W { w : self } } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & mut self ) -> _Ot8W { _Ot8W { w : self } } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & mut self ) -> _Ot7W { _Ot7W { w : self } } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & mut self ) -> _Ot6W { _Ot6W { w : self } } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & mut self ) -> _Ot5W { _Ot5W { w : self } } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & mut self ) -> _Ot4W { _Ot4W { w : self } } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & mut self ) -> _Ot3W { _Ot3W { w : self } } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & mut self ) -> _Ot2W { _Ot2W { w : self } } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & mut self ) -> _Ot1W { _Ot1W { w : self } } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & mut self ) -> _Ot0W { _Ot0W { w : self } } } } # [ doc = "GPIO port output speed register" ] pub struct Ospeedr { register : VolatileCell < u32 > } # [ doc = "GPIO port output speed register" ] pub mod ospeedr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ospeedr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ospeedr15R { bits : u8 , } impl Ospeedr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr14R { bits : u8 , } impl Ospeedr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr13R { bits : u8 , } impl Ospeedr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr12R { bits : u8 , } impl Ospeedr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr11R { bits : u8 , } impl Ospeedr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr10R { bits : u8 , } impl Ospeedr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr9R { bits : u8 , } impl Ospeedr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr8R { bits : u8 , } impl Ospeedr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr7R { bits : u8 , } impl Ospeedr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr6R { bits : u8 , } impl Ospeedr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr5R { bits : u8 , } impl Ospeedr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr4R { bits : u8 , } impl Ospeedr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr3R { bits : u8 , } impl Ospeedr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr2R { bits : u8 , } impl Ospeedr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr1R { bits : u8 , } impl Ospeedr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ospeedr0R { bits : u8 , } impl Ospeedr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ospeedr15W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr14W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr13W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr12W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr11W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr10W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr9W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr8W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr7W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr6W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr5W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr4W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr3W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr2W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ospeedr0W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & self ) -> Ospeedr15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & self ) -> Ospeedr14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & self ) -> Ospeedr13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & self ) -> Ospeedr12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & self ) -> Ospeedr11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & self ) -> Ospeedr10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & self ) -> Ospeedr9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & self ) -> Ospeedr8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & self ) -> Ospeedr7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & self ) -> Ospeedr6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & self ) -> Ospeedr5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & self ) -> Ospeedr4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & self ) -> Ospeedr3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & self ) -> Ospeedr2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & self ) -> Ospeedr1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & self ) -> Ospeedr0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ospeedr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 192 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & mut self ) -> _Ospeedr15W { _Ospeedr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & mut self ) -> _Ospeedr14W { _Ospeedr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & mut self ) -> _Ospeedr13W { _Ospeedr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & mut self ) -> _Ospeedr12W { _Ospeedr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & mut self ) -> _Ospeedr11W { _Ospeedr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & mut self ) -> _Ospeedr10W { _Ospeedr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & mut self ) -> _Ospeedr9W { _Ospeedr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & mut self ) -> _Ospeedr8W { _Ospeedr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & mut self ) -> _Ospeedr7W { _Ospeedr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & mut self ) -> _Ospeedr6W { _Ospeedr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & mut self ) -> _Ospeedr5W { _Ospeedr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & mut self ) -> _Ospeedr4W { _Ospeedr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & mut self ) -> _Ospeedr3W { _Ospeedr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & mut self ) -> _Ospeedr2W { _Ospeedr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & mut self ) -> _Ospeedr1W { _Ospeedr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & mut self ) -> _Ospeedr0W { _Ospeedr0W { w : self } } } } # [ doc = "GPIO port pull-up/pull-down register" ] pub struct Pupdr { register : VolatileCell < u32 > } # [ doc = "GPIO port pull-up/pull-down register" ] pub mod pupdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pupdr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Pupdr15R { bits : u8 , } impl Pupdr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr14R { bits : u8 , } impl Pupdr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr13R { bits : u8 , } impl Pupdr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr12R { bits : u8 , } impl Pupdr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr11R { bits : u8 , } impl Pupdr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr10R { bits : u8 , } impl Pupdr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr9R { bits : u8 , } impl Pupdr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr8R { bits : u8 , } impl Pupdr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr7R { bits : u8 , } impl Pupdr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr6R { bits : u8 , } impl Pupdr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr5R { bits : u8 , } impl Pupdr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr4R { bits : u8 , } impl Pupdr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr3R { bits : u8 , } impl Pupdr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr2R { bits : u8 , } impl Pupdr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr1R { bits : u8 , } impl Pupdr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pupdr0R { bits : u8 , } impl Pupdr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Pupdr15W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr14W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr13W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr12W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr11W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr10W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr9W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr8W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr7W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr6W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr5W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr4W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr3W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr2W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr1W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pupdr0W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & self ) -> Pupdr15R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr15R { bits } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & self ) -> Pupdr14R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr14R { bits } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & self ) -> Pupdr13R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr13R { bits } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & self ) -> Pupdr12R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr12R { bits } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & self ) -> Pupdr11R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr11R { bits } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & self ) -> Pupdr10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr10R { bits } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & self ) -> Pupdr9R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr9R { bits } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & self ) -> Pupdr8R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr8R { bits } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & self ) -> Pupdr7R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr7R { bits } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & self ) -> Pupdr6R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr6R { bits } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & self ) -> Pupdr5R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr5R { bits } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & self ) -> Pupdr4R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr4R { bits } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & self ) -> Pupdr3R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr3R { bits } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & self ) -> Pupdr2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr2R { bits } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & self ) -> Pupdr1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr1R { bits } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & self ) -> Pupdr0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pupdr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 256 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & mut self ) -> _Pupdr15W { _Pupdr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & mut self ) -> _Pupdr14W { _Pupdr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & mut self ) -> _Pupdr13W { _Pupdr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & mut self ) -> _Pupdr12W { _Pupdr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & mut self ) -> _Pupdr11W { _Pupdr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & mut self ) -> _Pupdr10W { _Pupdr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & mut self ) -> _Pupdr9W { _Pupdr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & mut self ) -> _Pupdr8W { _Pupdr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & mut self ) -> _Pupdr7W { _Pupdr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & mut self ) -> _Pupdr6W { _Pupdr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & mut self ) -> _Pupdr5W { _Pupdr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & mut self ) -> _Pupdr4W { _Pupdr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & mut self ) -> _Pupdr3W { _Pupdr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & mut self ) -> _Pupdr2W { _Pupdr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & mut self ) -> _Pupdr1W { _Pupdr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & mut self ) -> _Pupdr0W { _Pupdr0W { w : self } } } } # [ doc = "GPIO port input data register" ] pub struct Idr { register : VolatileCell < u32 > } # [ doc = "GPIO port input data register" ] pub mod idr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Idr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Idr15R { bits : u8 , } impl Idr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr14R { bits : u8 , } impl Idr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr13R { bits : u8 , } impl Idr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr12R { bits : u8 , } impl Idr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr11R { bits : u8 , } impl Idr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr10R { bits : u8 , } impl Idr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr9R { bits : u8 , } impl Idr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr8R { bits : u8 , } impl Idr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr7R { bits : u8 , } impl Idr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr6R { bits : u8 , } impl Idr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr5R { bits : u8 , } impl Idr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr4R { bits : u8 , } impl Idr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr3R { bits : u8 , } impl Idr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr2R { bits : u8 , } impl Idr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr1R { bits : u8 , } impl Idr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr0R { bits : u8 , } impl Idr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr15 ( & self ) -> Idr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr15R { bits } } # [ doc = "Bit 14 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr14 ( & self ) -> Idr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr14R { bits } } # [ doc = "Bit 13 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr13 ( & self ) -> Idr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr13R { bits } } # [ doc = "Bit 12 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr12 ( & self ) -> Idr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr12R { bits } } # [ doc = "Bit 11 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr11 ( & self ) -> Idr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr11R { bits } } # [ doc = "Bit 10 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr10 ( & self ) -> Idr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr10R { bits } } # [ doc = "Bit 9 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr9 ( & self ) -> Idr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr9R { bits } } # [ doc = "Bit 8 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr8 ( & self ) -> Idr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr8R { bits } } # [ doc = "Bit 7 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr7 ( & self ) -> Idr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr7R { bits } } # [ doc = "Bit 6 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr6 ( & self ) -> Idr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr6R { bits } } # [ doc = "Bit 5 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr5 ( & self ) -> Idr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr5R { bits } } # [ doc = "Bit 4 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr4 ( & self ) -> Idr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr4R { bits } } # [ doc = "Bit 3 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr3 ( & self ) -> Idr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr3R { bits } } # [ doc = "Bit 2 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr2 ( & self ) -> Idr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr2R { bits } } # [ doc = "Bit 1 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr1 ( & self ) -> Idr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr1R { bits } } # [ doc = "Bit 0 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr0 ( & self ) -> Idr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr0R { bits } } } } # [ doc = "GPIO port output data register" ] pub struct Odr { register : VolatileCell < u32 > } # [ doc = "GPIO port output data register" ] pub mod odr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Odr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Odr15R { bits : u8 , } impl Odr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr14R { bits : u8 , } impl Odr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr13R { bits : u8 , } impl Odr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr12R { bits : u8 , } impl Odr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr11R { bits : u8 , } impl Odr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr10R { bits : u8 , } impl Odr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr9R { bits : u8 , } impl Odr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr8R { bits : u8 , } impl Odr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr7R { bits : u8 , } impl Odr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr6R { bits : u8 , } impl Odr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr5R { bits : u8 , } impl Odr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr4R { bits : u8 , } impl Odr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr3R { bits : u8 , } impl Odr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr2R { bits : u8 , } impl Odr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr1R { bits : u8 , } impl Odr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr0R { bits : u8 , } impl Odr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Odr15W < 'a > { w : & 'a mut W , } impl < 'a > _Odr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr14W < 'a > { w : & 'a mut W , } impl < 'a > _Odr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr13W < 'a > { w : & 'a mut W , } impl < 'a > _Odr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr12W < 'a > { w : & 'a mut W , } impl < 'a > _Odr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr11W < 'a > { w : & 'a mut W , } impl < 'a > _Odr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr10W < 'a > { w : & 'a mut W , } impl < 'a > _Odr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr9W < 'a > { w : & 'a mut W , } impl < 'a > _Odr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr8W < 'a > { w : & 'a mut W , } impl < 'a > _Odr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr7W < 'a > { w : & 'a mut W , } impl < 'a > _Odr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr6W < 'a > { w : & 'a mut W , } impl < 'a > _Odr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr5W < 'a > { w : & 'a mut W , } impl < 'a > _Odr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr4W < 'a > { w : & 'a mut W , } impl < 'a > _Odr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr3W < 'a > { w : & 'a mut W , } impl < 'a > _Odr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr2W < 'a > { w : & 'a mut W , } impl < 'a > _Odr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr1W < 'a > { w : & 'a mut W , } impl < 'a > _Odr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr0W < 'a > { w : & 'a mut W , } impl < 'a > _Odr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & self ) -> Odr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr15R { bits } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & self ) -> Odr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr14R { bits } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & self ) -> Odr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr13R { bits } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & self ) -> Odr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr12R { bits } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & self ) -> Odr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr11R { bits } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & self ) -> Odr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr10R { bits } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & self ) -> Odr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr9R { bits } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & self ) -> Odr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr8R { bits } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & self ) -> Odr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr7R { bits } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & self ) -> Odr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr6R { bits } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & self ) -> Odr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr5R { bits } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & self ) -> Odr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr4R { bits } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & self ) -> Odr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr3R { bits } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & self ) -> Odr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr2R { bits } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & self ) -> Odr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr1R { bits } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & self ) -> Odr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & mut self ) -> _Odr15W { _Odr15W { w : self } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & mut self ) -> _Odr14W { _Odr14W { w : self } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & mut self ) -> _Odr13W { _Odr13W { w : self } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & mut self ) -> _Odr12W { _Odr12W { w : self } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & mut self ) -> _Odr11W { _Odr11W { w : self } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & mut self ) -> _Odr10W { _Odr10W { w : self } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & mut self ) -> _Odr9W { _Odr9W { w : self } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & mut self ) -> _Odr8W { _Odr8W { w : self } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & mut self ) -> _Odr7W { _Odr7W { w : self } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & mut self ) -> _Odr6W { _Odr6W { w : self } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & mut self ) -> _Odr5W { _Odr5W { w : self } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & mut self ) -> _Odr4W { _Odr4W { w : self } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & mut self ) -> _Odr3W { _Odr3W { w : self } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & mut self ) -> _Odr2W { _Odr2W { w : self } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & mut self ) -> _Odr1W { _Odr1W { w : self } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & mut self ) -> _Odr0W { _Odr0W { w : self } } } } # [ doc = "GPIO port bit set/reset register" ] pub struct Bsrr { register : VolatileCell < u32 > } # [ doc = "GPIO port bit set/reset register" ] pub mod bsrr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bsrr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Br15W < 'a > { w : & 'a mut W , } impl < 'a > _Br15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br14W < 'a > { w : & 'a mut W , } impl < 'a > _Br14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br13W < 'a > { w : & 'a mut W , } impl < 'a > _Br13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br12W < 'a > { w : & 'a mut W , } impl < 'a > _Br12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br11W < 'a > { w : & 'a mut W , } impl < 'a > _Br11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br10W < 'a > { w : & 'a mut W , } impl < 'a > _Br10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br9W < 'a > { w : & 'a mut W , } impl < 'a > _Br9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br8W < 'a > { w : & 'a mut W , } impl < 'a > _Br8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br7W < 'a > { w : & 'a mut W , } impl < 'a > _Br7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br6W < 'a > { w : & 'a mut W , } impl < 'a > _Br6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br5W < 'a > { w : & 'a mut W , } impl < 'a > _Br5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br4W < 'a > { w : & 'a mut W , } impl < 'a > _Br4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br3W < 'a > { w : & 'a mut W , } impl < 'a > _Br3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br2W < 'a > { w : & 'a mut W , } impl < 'a > _Br2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br1W < 'a > { w : & 'a mut W , } impl < 'a > _Br1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Br0W < 'a > { w : & 'a mut W , } impl < 'a > _Br0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs15W < 'a > { w : & 'a mut W , } impl < 'a > _Bs15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs14W < 'a > { w : & 'a mut W , } impl < 'a > _Bs14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs13W < 'a > { w : & 'a mut W , } impl < 'a > _Bs13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs12W < 'a > { w : & 'a mut W , } impl < 'a > _Bs12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs11W < 'a > { w : & 'a mut W , } impl < 'a > _Bs11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs10W < 'a > { w : & 'a mut W , } impl < 'a > _Bs10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs9W < 'a > { w : & 'a mut W , } impl < 'a > _Bs9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs8W < 'a > { w : & 'a mut W , } impl < 'a > _Bs8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs7W < 'a > { w : & 'a mut W , } impl < 'a > _Bs7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs6W < 'a > { w : & 'a mut W , } impl < 'a > _Bs6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs5W < 'a > { w : & 'a mut W , } impl < 'a > _Bs5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs4W < 'a > { w : & 'a mut W , } impl < 'a > _Bs4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs3W < 'a > { w : & 'a mut W , } impl < 'a > _Bs3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs2W < 'a > { w : & 'a mut W , } impl < 'a > _Bs2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs1W < 'a > { w : & 'a mut W , } impl < 'a > _Bs1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Bs0W < 'a > { w : & 'a mut W , } impl < 'a > _Bs0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br15 ( & mut self ) -> _Br15W { _Br15W { w : self } } # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br14 ( & mut self ) -> _Br14W { _Br14W { w : self } } # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br13 ( & mut self ) -> _Br13W { _Br13W { w : self } } # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br12 ( & mut self ) -> _Br12W { _Br12W { w : self } } # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br11 ( & mut self ) -> _Br11W { _Br11W { w : self } } # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br10 ( & mut self ) -> _Br10W { _Br10W { w : self } } # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br9 ( & mut self ) -> _Br9W { _Br9W { w : self } } # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br8 ( & mut self ) -> _Br8W { _Br8W { w : self } } # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br7 ( & mut self ) -> _Br7W { _Br7W { w : self } } # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br6 ( & mut self ) -> _Br6W { _Br6W { w : self } } # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br5 ( & mut self ) -> _Br5W { _Br5W { w : self } } # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br4 ( & mut self ) -> _Br4W { _Br4W { w : self } } # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br3 ( & mut self ) -> _Br3W { _Br3W { w : self } } # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br2 ( & mut self ) -> _Br2W { _Br2W { w : self } } # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br1 ( & mut self ) -> _Br1W { _Br1W { w : self } } # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn br0 ( & mut self ) -> _Br0W { _Br0W { w : self } } # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs15 ( & mut self ) -> _Bs15W { _Bs15W { w : self } } # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs14 ( & mut self ) -> _Bs14W { _Bs14W { w : self } } # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs13 ( & mut self ) -> _Bs13W { _Bs13W { w : self } } # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs12 ( & mut self ) -> _Bs12W { _Bs12W { w : self } } # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs11 ( & mut self ) -> _Bs11W { _Bs11W { w : self } } # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs10 ( & mut self ) -> _Bs10W { _Bs10W { w : self } } # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs9 ( & mut self ) -> _Bs9W { _Bs9W { w : self } } # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs8 ( & mut self ) -> _Bs8W { _Bs8W { w : self } } # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs7 ( & mut self ) -> _Bs7W { _Bs7W { w : self } } # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs6 ( & mut self ) -> _Bs6W { _Bs6W { w : self } } # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs5 ( & mut self ) -> _Bs5W { _Bs5W { w : self } } # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs4 ( & mut self ) -> _Bs4W { _Bs4W { w : self } } # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs3 ( & mut self ) -> _Bs3W { _Bs3W { w : self } } # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs2 ( & mut self ) -> _Bs2W { _Bs2W { w : self } } # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs1 ( & mut self ) -> _Bs1W { _Bs1W { w : self } } # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs0 ( & mut self ) -> _Bs0W { _Bs0W { w : self } } } } # [ doc = "GPIO port configuration lock register" ] pub struct Lckr { register : VolatileCell < u32 > } # [ doc = "GPIO port configuration lock register" ] pub mod lckr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Lckr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LckkR { bits : u8 , } impl LckkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck15R { bits : u8 , } impl Lck15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck14R { bits : u8 , } impl Lck14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck13R { bits : u8 , } impl Lck13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck12R { bits : u8 , } impl Lck12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck11R { bits : u8 , } impl Lck11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck10R { bits : u8 , } impl Lck10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck9R { bits : u8 , } impl Lck9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck8R { bits : u8 , } impl Lck8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck7R { bits : u8 , } impl Lck7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck6R { bits : u8 , } impl Lck6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck5R { bits : u8 , } impl Lck5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck4R { bits : u8 , } impl Lck4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck3R { bits : u8 , } impl Lck3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck2R { bits : u8 , } impl Lck2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck1R { bits : u8 , } impl Lck1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Lck0R { bits : u8 , } impl Lck0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LckkW < 'a > { w : & 'a mut W , } impl < 'a > _LckkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck15W < 'a > { w : & 'a mut W , } impl < 'a > _Lck15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck14W < 'a > { w : & 'a mut W , } impl < 'a > _Lck14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck13W < 'a > { w : & 'a mut W , } impl < 'a > _Lck13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck12W < 'a > { w : & 'a mut W , } impl < 'a > _Lck12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck11W < 'a > { w : & 'a mut W , } impl < 'a > _Lck11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck10W < 'a > { w : & 'a mut W , } impl < 'a > _Lck10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck9W < 'a > { w : & 'a mut W , } impl < 'a > _Lck9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck8W < 'a > { w : & 'a mut W , } impl < 'a > _Lck8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck7W < 'a > { w : & 'a mut W , } impl < 'a > _Lck7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck6W < 'a > { w : & 'a mut W , } impl < 'a > _Lck6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck5W < 'a > { w : & 'a mut W , } impl < 'a > _Lck5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck4W < 'a > { w : & 'a mut W , } impl < 'a > _Lck4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck3W < 'a > { w : & 'a mut W , } impl < 'a > _Lck3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck2W < 'a > { w : & 'a mut W , } impl < 'a > _Lck2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck1W < 'a > { w : & 'a mut W , } impl < 'a > _Lck1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Lck0W < 'a > { w : & 'a mut W , } impl < 'a > _Lck0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & self ) -> LckkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LckkR { bits } } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & self ) -> Lck15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck15R { bits } } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & self ) -> Lck14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck14R { bits } } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & self ) -> Lck13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck13R { bits } } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & self ) -> Lck12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck12R { bits } } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & self ) -> Lck11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck11R { bits } } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & self ) -> Lck10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck10R { bits } } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & self ) -> Lck9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck9R { bits } } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & self ) -> Lck8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck8R { bits } } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & self ) -> Lck7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck7R { bits } } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & self ) -> Lck6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck6R { bits } } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & self ) -> Lck5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck5R { bits } } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & self ) -> Lck4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck4R { bits } } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & self ) -> Lck3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck3R { bits } } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & self ) -> Lck2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck2R { bits } } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & self ) -> Lck1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck1R { bits } } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & self ) -> Lck0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Lck0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & mut self ) -> _LckkW { _LckkW { w : self } } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & mut self ) -> _Lck15W { _Lck15W { w : self } } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & mut self ) -> _Lck14W { _Lck14W { w : self } } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & mut self ) -> _Lck13W { _Lck13W { w : self } } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & mut self ) -> _Lck12W { _Lck12W { w : self } } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & mut self ) -> _Lck11W { _Lck11W { w : self } } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & mut self ) -> _Lck10W { _Lck10W { w : self } } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & mut self ) -> _Lck9W { _Lck9W { w : self } } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & mut self ) -> _Lck8W { _Lck8W { w : self } } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & mut self ) -> _Lck7W { _Lck7W { w : self } } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & mut self ) -> _Lck6W { _Lck6W { w : self } } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & mut self ) -> _Lck5W { _Lck5W { w : self } } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & mut self ) -> _Lck4W { _Lck4W { w : self } } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & mut self ) -> _Lck3W { _Lck3W { w : self } } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & mut self ) -> _Lck2W { _Lck2W { w : self } } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & mut self ) -> _Lck1W { _Lck1W { w : self } } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & mut self ) -> _Lck0W { _Lck0W { w : self } } } } # [ doc = "GPIO alternate function low register" ] pub struct Afrl { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function low register" ] pub mod afrl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Afrl7R { bits : u8 , } impl Afrl7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl6R { bits : u8 , } impl Afrl6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl5R { bits : u8 , } impl Afrl5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl4R { bits : u8 , } impl Afrl4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl3R { bits : u8 , } impl Afrl3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl2R { bits : u8 , } impl Afrl2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl1R { bits : u8 , } impl Afrl1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrl0R { bits : u8 , } impl Afrl0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Afrl7W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl6W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl5W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl4W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl3W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl2W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl1W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrl0W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & self ) -> Afrl7R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl7R { bits } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & self ) -> Afrl6R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl6R { bits } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & self ) -> Afrl5R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl5R { bits } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & self ) -> Afrl4R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl4R { bits } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & self ) -> Afrl3R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl3R { bits } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & self ) -> Afrl2R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl2R { bits } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & self ) -> Afrl1R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl1R { bits } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & self ) -> Afrl0R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrl0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & mut self ) -> _Afrl7W { _Afrl7W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & mut self ) -> _Afrl6W { _Afrl6W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & mut self ) -> _Afrl5W { _Afrl5W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & mut self ) -> _Afrl4W { _Afrl4W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & mut self ) -> _Afrl3W { _Afrl3W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & mut self ) -> _Afrl2W { _Afrl2W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & mut self ) -> _Afrl1W { _Afrl1W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & mut self ) -> _Afrl0W { _Afrl0W { w : self } } } } # [ doc = "GPIO alternate function high register" ] pub struct Afrh { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function high register" ] pub mod afrh { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrh { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Afrh15R { bits : u8 , } impl Afrh15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh14R { bits : u8 , } impl Afrh14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh13R { bits : u8 , } impl Afrh13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh12R { bits : u8 , } impl Afrh12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh11R { bits : u8 , } impl Afrh11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh10R { bits : u8 , } impl Afrh10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh9R { bits : u8 , } impl Afrh9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Afrh8R { bits : u8 , } impl Afrh8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Afrh15W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh14W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh13W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh12W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh11W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh10W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh9W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Afrh8W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & self ) -> Afrh15R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh15R { bits } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & self ) -> Afrh14R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh14R { bits } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & self ) -> Afrh13R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh13R { bits } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & self ) -> Afrh12R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh12R { bits } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & self ) -> Afrh11R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh11R { bits } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & self ) -> Afrh10R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh10R { bits } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & self ) -> Afrh9R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh9R { bits } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & self ) -> Afrh8R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Afrh8R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & mut self ) -> _Afrh15W { _Afrh15W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & mut self ) -> _Afrh14W { _Afrh14W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & mut self ) -> _Afrh13W { _Afrh13W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & mut self ) -> _Afrh12W { _Afrh12W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & mut self ) -> _Afrh11W { _Afrh11W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & mut self ) -> _Afrh10W { _Afrh10W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & mut self ) -> _Afrh9W { _Afrh9W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & mut self ) -> _Afrh8W { _Afrh8W { w : self } } } } } # [ doc = "General-purpose I/Os" ] pub struct Gpiob { register_block : gpiob :: RegisterBlock } impl Deref for Gpiob { type Target = gpiob :: RegisterBlock ; fn deref ( & self ) -> & gpiob :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose I/Os" ] pub const GPIOA : Peripheral < Gpioa > = unsafe { Peripheral :: new ( 1073872896 ) } ; # [ doc = "General-purpose I/Os" ] pub mod gpioa { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - GPIO port mode register" ] pub moder : Moder , # [ doc = "0x04 - GPIO port output type register" ] pub otyper : Otyper , # [ doc = "0x08 - GPIO port output speed register" ] pub ospeedr : Ospeedr , # [ doc = "0x0c - GPIO port pull-up/pull-down register" ] pub pupdr : Pupdr , # [ doc = "0x10 - GPIO port input data register" ] pub idr : Idr , # [ doc = "0x14 - GPIO port output data register" ] pub odr : Odr , # [ doc = "0x18 - GPIO port bit set/reset register" ] pub bsrr : Bsrr , # [ doc = "0x1c - GPIO port configuration lock register" ] pub lckr : Lckr , # [ doc = "0x20 - GPIO alternate function low register" ] pub afrl : Afrl , # [ doc = "0x24 - GPIO alternate function high register" ] pub afrh : Afrh , } # [ doc = "GPIO port mode register" ] pub struct Moder { register : VolatileCell < u32 > } # [ doc = "GPIO port mode register" ] pub mod moder { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Moder { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `MODER15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Moder15R { # [ doc = "00: Input (reset state)" ] InputMode , # [ doc = "01: General purpose output mode" ] OutputMode , # [ doc = "10: Alternate function mode" ] AlternateMode , # [ doc = "11: Analog mode" ] AnalogMode } impl Moder15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Moder15R :: InputMode => 0 , Moder15R :: OutputMode => 1 , Moder15R :: AlternateMode => 2 , Moder15R :: AnalogMode => 3 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Moder15R { match bits { 0 => Moder15R :: InputMode , 1 => Moder15R :: OutputMode , 2 => Moder15R :: AlternateMode , 3 => Moder15R :: AnalogMode , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `InputMode`" ] # [ inline ( always ) ] pub fn is_input_mode ( & self ) -> bool { * self == Moder15R :: InputMode } # [ doc = "Checks if the value of the field is `OutputMode`" ] # [ inline ( always ) ] pub fn is_output_mode ( & self ) -> bool { * self == Moder15R :: OutputMode } # [ doc = "Checks if the value of the field is `AlternateMode`" ] # [ inline ( always ) ] pub fn is_alternate_mode ( & self ) -> bool { * self == Moder15R :: AlternateMode } # [ doc = "Checks if the value of the field is `AnalogMode`" ] # [ inline ( always ) ] pub fn is_analog_mode ( & self ) -> bool { * self == Moder15R :: AnalogMode } } # [ doc = "Possible values of the field `MODER14`" ] pub type Moder14R = Moder15R ; # [ doc = "Possible values of the field `MODER13`" ] pub type Moder13R = Moder15R ; # [ doc = "Possible values of the field `MODER12`" ] pub type Moder12R = Moder15R ; # [ doc = "Possible values of the field `MODER11`" ] pub type Moder11R = Moder15R ; # [ doc = "Possible values of the field `MODER10`" ] pub type Moder10R = Moder15R ; # [ doc = "Possible values of the field `MODER9`" ] pub type Moder9R = Moder15R ; # [ doc = "Possible values of the field `MODER8`" ] pub type Moder8R = Moder15R ; # [ doc = "Possible values of the field `MODER7`" ] pub type Moder7R = Moder15R ; # [ doc = "Possible values of the field `MODER6`" ] pub type Moder6R = Moder15R ; # [ doc = "Possible values of the field `MODER5`" ] pub type Moder5R = Moder15R ; # [ doc = "Possible values of the field `MODER4`" ] pub type Moder4R = Moder15R ; # [ doc = "Possible values of the field `MODER3`" ] pub type Moder3R = Moder15R ; # [ doc = "Possible values of the field `MODER2`" ] pub type Moder2R = Moder15R ; # [ doc = "Possible values of the field `MODER1`" ] pub type Moder1R = Moder15R ; # [ doc = "Possible values of the field `MODER0`" ] pub type Moder0R = Moder15R ; # [ doc = "Values that can be written to the field `MODER15`" ] pub enum Moder15W { # [ doc = "00: Input (reset state)" ] InputMode , # [ doc = "01: General purpose output mode" ] OutputMode , # [ doc = "10: Alternate function mode" ] AlternateMode , # [ doc = "11: Analog mode" ] AnalogMode } impl Moder15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Moder15W :: InputMode => 0 , Moder15W :: OutputMode => 1 , Moder15W :: AlternateMode => 2 , Moder15W :: AnalogMode => 3 } } } # [ doc = r" Proxy" ] pub struct _Moder15W < 'a > { w : & 'a mut W , } impl < 'a > _Moder15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER14`" ] pub type Moder14W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder14W < 'a > { w : & 'a mut W , } impl < 'a > _Moder14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER13`" ] pub type Moder13W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder13W < 'a > { w : & 'a mut W , } impl < 'a > _Moder13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER12`" ] pub type Moder12W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder12W < 'a > { w : & 'a mut W , } impl < 'a > _Moder12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER11`" ] pub type Moder11W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder11W < 'a > { w : & 'a mut W , } impl < 'a > _Moder11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER10`" ] pub type Moder10W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder10W < 'a > { w : & 'a mut W , } impl < 'a > _Moder10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER9`" ] pub type Moder9W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder9W < 'a > { w : & 'a mut W , } impl < 'a > _Moder9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER8`" ] pub type Moder8W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder8W < 'a > { w : & 'a mut W , } impl < 'a > _Moder8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER7`" ] pub type Moder7W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder7W < 'a > { w : & 'a mut W , } impl < 'a > _Moder7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER6`" ] pub type Moder6W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder6W < 'a > { w : & 'a mut W , } impl < 'a > _Moder6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER5`" ] pub type Moder5W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder5W < 'a > { w : & 'a mut W , } impl < 'a > _Moder5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER4`" ] pub type Moder4W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder4W < 'a > { w : & 'a mut W , } impl < 'a > _Moder4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER3`" ] pub type Moder3W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder3W < 'a > { w : & 'a mut W , } impl < 'a > _Moder3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER2`" ] pub type Moder2W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder2W < 'a > { w : & 'a mut W , } impl < 'a > _Moder2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER1`" ] pub type Moder1W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder1W < 'a > { w : & 'a mut W , } impl < 'a > _Moder1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `MODER0`" ] pub type Moder0W = Moder15W ; # [ doc = r" Proxy" ] pub struct _Moder0W < 'a > { w : & 'a mut W , } impl < 'a > _Moder0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Moder0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Input (reset state)" ] # [ inline ( always ) ] pub fn input_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: InputMode ) } # [ doc = "01: General purpose output mode" ] # [ inline ( always ) ] pub fn output_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: OutputMode ) } # [ doc = "10: Alternate function mode" ] # [ inline ( always ) ] pub fn alternate_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AlternateMode ) } # [ doc = "11: Analog mode" ] # [ inline ( always ) ] pub fn analog_mode ( self ) -> & 'a mut W { self . variant ( Moder15W :: AnalogMode ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & self ) -> Moder15R { Moder15R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & self ) -> Moder14R { Moder14R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & self ) -> Moder13R { Moder13R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & self ) -> Moder12R { Moder12R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & self ) -> Moder11R { Moder11R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & self ) -> Moder10R { Moder10R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & self ) -> Moder9R { Moder9R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & self ) -> Moder8R { Moder8R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & self ) -> Moder7R { Moder7R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & self ) -> Moder6R { Moder6R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & self ) -> Moder5R { Moder5R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & self ) -> Moder4R { Moder4R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & self ) -> Moder3R { Moder3R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & self ) -> Moder2R { Moder2R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & self ) -> Moder1R { Moder1R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & self ) -> Moder0R { Moder0R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2818572288 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder15 ( & mut self ) -> _Moder15W { _Moder15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder14 ( & mut self ) -> _Moder14W { _Moder14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder13 ( & mut self ) -> _Moder13W { _Moder13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder12 ( & mut self ) -> _Moder12W { _Moder12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder11 ( & mut self ) -> _Moder11W { _Moder11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder10 ( & mut self ) -> _Moder10W { _Moder10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder9 ( & mut self ) -> _Moder9W { _Moder9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder8 ( & mut self ) -> _Moder8W { _Moder8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder7 ( & mut self ) -> _Moder7W { _Moder7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder6 ( & mut self ) -> _Moder6W { _Moder6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder5 ( & mut self ) -> _Moder5W { _Moder5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder4 ( & mut self ) -> _Moder4W { _Moder4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder3 ( & mut self ) -> _Moder3W { _Moder3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder2 ( & mut self ) -> _Moder2W { _Moder2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder1 ( & mut self ) -> _Moder1W { _Moder1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn moder0 ( & mut self ) -> _Moder0W { _Moder0W { w : self } } } } # [ doc = "GPIO port output type register" ] pub struct Otyper { register : VolatileCell < u32 > } # [ doc = "GPIO port output type register" ] pub mod otyper { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Otyper { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `OT15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Ot15R { # [ doc = "0: Output push-pull (reset state)" ] PushPull , # [ doc = "1: Output open-drain" ] OpenDrain } impl Ot15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Ot15R :: PushPull => 0 , Ot15R :: OpenDrain => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Ot15R { match bits { 0 => Ot15R :: PushPull , 1 => Ot15R :: OpenDrain , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `PushPull`" ] # [ inline ( always ) ] pub fn is_push_pull ( & self ) -> bool { * self == Ot15R :: PushPull } # [ doc = "Checks if the value of the field is `OpenDrain`" ] # [ inline ( always ) ] pub fn is_open_drain ( & self ) -> bool { * self == Ot15R :: OpenDrain } } # [ doc = "Possible values of the field `OT14`" ] pub type Ot14R = Ot15R ; # [ doc = "Possible values of the field `OT13`" ] pub type Ot13R = Ot15R ; # [ doc = "Possible values of the field `OT12`" ] pub type Ot12R = Ot15R ; # [ doc = "Possible values of the field `OT11`" ] pub type Ot11R = Ot15R ; # [ doc = "Possible values of the field `OT10`" ] pub type Ot10R = Ot15R ; # [ doc = "Possible values of the field `OT9`" ] pub type Ot9R = Ot15R ; # [ doc = "Possible values of the field `OT8`" ] pub type Ot8R = Ot15R ; # [ doc = "Possible values of the field `OT7`" ] pub type Ot7R = Ot15R ; # [ doc = "Possible values of the field `OT6`" ] pub type Ot6R = Ot15R ; # [ doc = "Possible values of the field `OT5`" ] pub type Ot5R = Ot15R ; # [ doc = "Possible values of the field `OT4`" ] pub type Ot4R = Ot15R ; # [ doc = "Possible values of the field `OT3`" ] pub type Ot3R = Ot15R ; # [ doc = "Possible values of the field `OT2`" ] pub type Ot2R = Ot15R ; # [ doc = "Possible values of the field `OT1`" ] pub type Ot1R = Ot15R ; # [ doc = "Possible values of the field `OT0`" ] pub type Ot0R = Ot15R ; # [ doc = "Values that can be written to the field `OT15`" ] pub enum Ot15W { # [ doc = "0: Output push-pull (reset state)" ] PushPull , # [ doc = "1: Output open-drain" ] OpenDrain } impl Ot15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Ot15W :: PushPull => 0 , Ot15W :: OpenDrain => 1 } } } # [ doc = r" Proxy" ] pub struct _Ot15W < 'a > { w : & 'a mut W , } impl < 'a > _Ot15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT14`" ] pub type Ot14W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot14W < 'a > { w : & 'a mut W , } impl < 'a > _Ot14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT13`" ] pub type Ot13W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot13W < 'a > { w : & 'a mut W , } impl < 'a > _Ot13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT12`" ] pub type Ot12W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot12W < 'a > { w : & 'a mut W , } impl < 'a > _Ot12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT11`" ] pub type Ot11W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot11W < 'a > { w : & 'a mut W , } impl < 'a > _Ot11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT10`" ] pub type Ot10W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot10W < 'a > { w : & 'a mut W , } impl < 'a > _Ot10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT9`" ] pub type Ot9W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot9W < 'a > { w : & 'a mut W , } impl < 'a > _Ot9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT8`" ] pub type Ot8W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot8W < 'a > { w : & 'a mut W , } impl < 'a > _Ot8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT7`" ] pub type Ot7W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot7W < 'a > { w : & 'a mut W , } impl < 'a > _Ot7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT6`" ] pub type Ot6W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot6W < 'a > { w : & 'a mut W , } impl < 'a > _Ot6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT5`" ] pub type Ot5W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot5W < 'a > { w : & 'a mut W , } impl < 'a > _Ot5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT4`" ] pub type Ot4W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot4W < 'a > { w : & 'a mut W , } impl < 'a > _Ot4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT3`" ] pub type Ot3W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot3W < 'a > { w : & 'a mut W , } impl < 'a > _Ot3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT2`" ] pub type Ot2W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot2W < 'a > { w : & 'a mut W , } impl < 'a > _Ot2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT1`" ] pub type Ot1W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot1W < 'a > { w : & 'a mut W , } impl < 'a > _Ot1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OT0`" ] pub type Ot0W = Ot15W ; # [ doc = r" Proxy" ] pub struct _Ot0W < 'a > { w : & 'a mut W , } impl < 'a > _Ot0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ot0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Output push-pull (reset state)" ] # [ inline ( always ) ] pub fn push_pull ( self ) -> & 'a mut W { self . variant ( Ot15W :: PushPull ) } # [ doc = "1: Output open-drain" ] # [ inline ( always ) ] pub fn open_drain ( self ) -> & 'a mut W { self . variant ( Ot15W :: OpenDrain ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & self ) -> Ot15R { Ot15R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & self ) -> Ot14R { Ot14R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & self ) -> Ot13R { Ot13R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & self ) -> Ot12R { Ot12R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & self ) -> Ot11R { Ot11R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & self ) -> Ot10R { Ot10R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & self ) -> Ot9R { Ot9R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & self ) -> Ot8R { Ot8R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & self ) -> Ot7R { Ot7R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & self ) -> Ot6R { Ot6R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & self ) -> Ot5R { Ot5R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & self ) -> Ot4R { Ot4R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & self ) -> Ot3R { Ot3R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & self ) -> Ot2R { Ot2R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & self ) -> Ot1R { Ot1R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & self ) -> Ot0R { Ot0R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot15 ( & mut self ) -> _Ot15W { _Ot15W { w : self } } # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot14 ( & mut self ) -> _Ot14W { _Ot14W { w : self } } # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot13 ( & mut self ) -> _Ot13W { _Ot13W { w : self } } # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot12 ( & mut self ) -> _Ot12W { _Ot12W { w : self } } # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot11 ( & mut self ) -> _Ot11W { _Ot11W { w : self } } # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot10 ( & mut self ) -> _Ot10W { _Ot10W { w : self } } # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot9 ( & mut self ) -> _Ot9W { _Ot9W { w : self } } # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot8 ( & mut self ) -> _Ot8W { _Ot8W { w : self } } # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot7 ( & mut self ) -> _Ot7W { _Ot7W { w : self } } # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot6 ( & mut self ) -> _Ot6W { _Ot6W { w : self } } # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot5 ( & mut self ) -> _Ot5W { _Ot5W { w : self } } # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot4 ( & mut self ) -> _Ot4W { _Ot4W { w : self } } # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot3 ( & mut self ) -> _Ot3W { _Ot3W { w : self } } # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot2 ( & mut self ) -> _Ot2W { _Ot2W { w : self } } # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot1 ( & mut self ) -> _Ot1W { _Ot1W { w : self } } # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ot0 ( & mut self ) -> _Ot0W { _Ot0W { w : self } } } } # [ doc = "GPIO port output speed register" ] pub struct Ospeedr { register : VolatileCell < u32 > } # [ doc = "GPIO port output speed register" ] pub mod ospeedr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ospeedr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `OSPEEDR15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Ospeedr15R { # [ doc = "00: Low speed" ] LowSpeed , # [ doc = "01: Medium speed" ] MediumSpeed , # [ doc = "10: Fast speed" ] FastSpeed , # [ doc = "11: High speed" ] HighSpeed } impl Ospeedr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Ospeedr15R :: LowSpeed => 0 , Ospeedr15R :: MediumSpeed => 1 , Ospeedr15R :: FastSpeed => 2 , Ospeedr15R :: HighSpeed => 3 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Ospeedr15R { match bits { 0 => Ospeedr15R :: LowSpeed , 1 => Ospeedr15R :: MediumSpeed , 2 => Ospeedr15R :: FastSpeed , 3 => Ospeedr15R :: HighSpeed , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `LowSpeed`" ] # [ inline ( always ) ] pub fn is_low_speed ( & self ) -> bool { * self == Ospeedr15R :: LowSpeed } # [ doc = "Checks if the value of the field is `MediumSpeed`" ] # [ inline ( always ) ] pub fn is_medium_speed ( & self ) -> bool { * self == Ospeedr15R :: MediumSpeed } # [ doc = "Checks if the value of the field is `FastSpeed`" ] # [ inline ( always ) ] pub fn is_fast_speed ( & self ) -> bool { * self == Ospeedr15R :: FastSpeed } # [ doc = "Checks if the value of the field is `HighSpeed`" ] # [ inline ( always ) ] pub fn is_high_speed ( & self ) -> bool { * self == Ospeedr15R :: HighSpeed } } # [ doc = "Possible values of the field `OSPEEDR14`" ] pub type Ospeedr14R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR13`" ] pub type Ospeedr13R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR12`" ] pub type Ospeedr12R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR11`" ] pub type Ospeedr11R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR10`" ] pub type Ospeedr10R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR9`" ] pub type Ospeedr9R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR8`" ] pub type Ospeedr8R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR7`" ] pub type Ospeedr7R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR6`" ] pub type Ospeedr6R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR5`" ] pub type Ospeedr5R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR4`" ] pub type Ospeedr4R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR3`" ] pub type Ospeedr3R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR2`" ] pub type Ospeedr2R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR1`" ] pub type Ospeedr1R = Ospeedr15R ; # [ doc = "Possible values of the field `OSPEEDR0`" ] pub type Ospeedr0R = Ospeedr15R ; # [ doc = "Values that can be written to the field `OSPEEDR15`" ] pub enum Ospeedr15W { # [ doc = "00: Low speed" ] LowSpeed , # [ doc = "01: Medium speed" ] MediumSpeed , # [ doc = "10: Fast speed" ] FastSpeed , # [ doc = "11: High speed" ] HighSpeed } impl Ospeedr15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Ospeedr15W :: LowSpeed => 0 , Ospeedr15W :: MediumSpeed => 1 , Ospeedr15W :: FastSpeed => 2 , Ospeedr15W :: HighSpeed => 3 } } } # [ doc = r" Proxy" ] pub struct _Ospeedr15W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR14`" ] pub type Ospeedr14W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr14W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR13`" ] pub type Ospeedr13W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr13W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR12`" ] pub type Ospeedr12W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr12W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR11`" ] pub type Ospeedr11W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr11W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR10`" ] pub type Ospeedr10W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr10W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR9`" ] pub type Ospeedr9W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr9W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR8`" ] pub type Ospeedr8W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr8W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR7`" ] pub type Ospeedr7W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr7W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR6`" ] pub type Ospeedr6W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr6W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR5`" ] pub type Ospeedr5W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr5W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR4`" ] pub type Ospeedr4W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr4W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR3`" ] pub type Ospeedr3W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr3W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR2`" ] pub type Ospeedr2W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr2W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR1`" ] pub type Ospeedr1W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `OSPEEDR0`" ] pub type Ospeedr0W = Ospeedr15W ; # [ doc = r" Proxy" ] pub struct _Ospeedr0W < 'a > { w : & 'a mut W , } impl < 'a > _Ospeedr0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Ospeedr0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Low speed" ] # [ inline ( always ) ] pub fn low_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: LowSpeed ) } # [ doc = "01: Medium speed" ] # [ inline ( always ) ] pub fn medium_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: MediumSpeed ) } # [ doc = "10: Fast speed" ] # [ inline ( always ) ] pub fn fast_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: FastSpeed ) } # [ doc = "11: High speed" ] # [ inline ( always ) ] pub fn high_speed ( self ) -> & 'a mut W { self . variant ( Ospeedr15W :: HighSpeed ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & self ) -> Ospeedr15R { Ospeedr15R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & self ) -> Ospeedr14R { Ospeedr14R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & self ) -> Ospeedr13R { Ospeedr13R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & self ) -> Ospeedr12R { Ospeedr12R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & self ) -> Ospeedr11R { Ospeedr11R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & self ) -> Ospeedr10R { Ospeedr10R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & self ) -> Ospeedr9R { Ospeedr9R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & self ) -> Ospeedr8R { Ospeedr8R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & self ) -> Ospeedr7R { Ospeedr7R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & self ) -> Ospeedr6R { Ospeedr6R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & self ) -> Ospeedr5R { Ospeedr5R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & self ) -> Ospeedr4R { Ospeedr4R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & self ) -> Ospeedr3R { Ospeedr3R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & self ) -> Ospeedr2R { Ospeedr2R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & self ) -> Ospeedr1R { Ospeedr1R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & self ) -> Ospeedr0R { Ospeedr0R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr15 ( & mut self ) -> _Ospeedr15W { _Ospeedr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr14 ( & mut self ) -> _Ospeedr14W { _Ospeedr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr13 ( & mut self ) -> _Ospeedr13W { _Ospeedr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr12 ( & mut self ) -> _Ospeedr12W { _Ospeedr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr11 ( & mut self ) -> _Ospeedr11W { _Ospeedr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr10 ( & mut self ) -> _Ospeedr10W { _Ospeedr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr9 ( & mut self ) -> _Ospeedr9W { _Ospeedr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr8 ( & mut self ) -> _Ospeedr8W { _Ospeedr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr7 ( & mut self ) -> _Ospeedr7W { _Ospeedr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr6 ( & mut self ) -> _Ospeedr6W { _Ospeedr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr5 ( & mut self ) -> _Ospeedr5W { _Ospeedr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr4 ( & mut self ) -> _Ospeedr4W { _Ospeedr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr3 ( & mut self ) -> _Ospeedr3W { _Ospeedr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr2 ( & mut self ) -> _Ospeedr2W { _Ospeedr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr1 ( & mut self ) -> _Ospeedr1W { _Ospeedr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn ospeedr0 ( & mut self ) -> _Ospeedr0W { _Ospeedr0W { w : self } } } } # [ doc = "GPIO port pull-up/pull-down register" ] pub struct Pupdr { register : VolatileCell < u32 > } # [ doc = "GPIO port pull-up/pull-down register" ] pub mod pupdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pupdr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `PUPDR15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Pupdr15R { # [ doc = "00: No pull-up, pull-down" ] NoPullUpPullDown , # [ doc = "01: Pull-up" ] PullUp , # [ doc = "10: Pull-down" ] PullDown , # [ doc = "11: Reserved" ] Reserved } impl Pupdr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Pupdr15R :: NoPullUpPullDown => 0 , Pupdr15R :: PullUp => 1 , Pupdr15R :: PullDown => 2 , Pupdr15R :: Reserved => 3 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Pupdr15R { match bits { 0 => Pupdr15R :: NoPullUpPullDown , 1 => Pupdr15R :: PullUp , 2 => Pupdr15R :: PullDown , 3 => Pupdr15R :: Reserved , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NoPullUpPullDown`" ] # [ inline ( always ) ] pub fn is_no_pull_up_pull_down ( & self ) -> bool { * self == Pupdr15R :: NoPullUpPullDown } # [ doc = "Checks if the value of the field is `PullUp`" ] # [ inline ( always ) ] pub fn is_pull_up ( & self ) -> bool { * self == Pupdr15R :: PullUp } # [ doc = "Checks if the value of the field is `PullDown`" ] # [ inline ( always ) ] pub fn is_pull_down ( & self ) -> bool { * self == Pupdr15R :: PullDown } # [ doc = "Checks if the value of the field is `Reserved`" ] # [ inline ( always ) ] pub fn is_reserved ( & self ) -> bool { * self == Pupdr15R :: Reserved } } # [ doc = "Possible values of the field `PUPDR14`" ] pub type Pupdr14R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR13`" ] pub type Pupdr13R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR12`" ] pub type Pupdr12R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR11`" ] pub type Pupdr11R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR10`" ] pub type Pupdr10R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR9`" ] pub type Pupdr9R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR8`" ] pub type Pupdr8R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR7`" ] pub type Pupdr7R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR6`" ] pub type Pupdr6R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR5`" ] pub type Pupdr5R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR4`" ] pub type Pupdr4R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR3`" ] pub type Pupdr3R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR2`" ] pub type Pupdr2R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR1`" ] pub type Pupdr1R = Pupdr15R ; # [ doc = "Possible values of the field `PUPDR0`" ] pub type Pupdr0R = Pupdr15R ; # [ doc = "Values that can be written to the field `PUPDR15`" ] pub enum Pupdr15W { # [ doc = "00: No pull-up, pull-down" ] NoPullUpPullDown , # [ doc = "01: Pull-up" ] PullUp , # [ doc = "10: Pull-down" ] PullDown , # [ doc = "11: Reserved" ] Reserved } impl Pupdr15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Pupdr15W :: NoPullUpPullDown => 0 , Pupdr15W :: PullUp => 1 , Pupdr15W :: PullDown => 2 , Pupdr15W :: Reserved => 3 } } } # [ doc = r" Proxy" ] pub struct _Pupdr15W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR14`" ] pub type Pupdr14W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr14W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR13`" ] pub type Pupdr13W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr13W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR12`" ] pub type Pupdr12W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr12W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR11`" ] pub type Pupdr11W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr11W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR10`" ] pub type Pupdr10W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr10W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR9`" ] pub type Pupdr9W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr9W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR8`" ] pub type Pupdr8W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr8W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR7`" ] pub type Pupdr7W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr7W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR6`" ] pub type Pupdr6W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr6W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR5`" ] pub type Pupdr5W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr5W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR4`" ] pub type Pupdr4W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr4W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR3`" ] pub type Pupdr3W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr3W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR2`" ] pub type Pupdr2W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr2W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR1`" ] pub type Pupdr1W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr1W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `PUPDR0`" ] pub type Pupdr0W = Pupdr15W ; # [ doc = r" Proxy" ] pub struct _Pupdr0W < 'a > { w : & 'a mut W , } impl < 'a > _Pupdr0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Pupdr0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: No pull-up, pull-down" ] # [ inline ( always ) ] pub fn no_pull_up_pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: NoPullUpPullDown ) } # [ doc = "01: Pull-up" ] # [ inline ( always ) ] pub fn pull_up ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullUp ) } # [ doc = "10: Pull-down" ] # [ inline ( always ) ] pub fn pull_down ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: PullDown ) } # [ doc = "11: Reserved" ] # [ inline ( always ) ] pub fn reserved ( self ) -> & 'a mut W { self . variant ( Pupdr15W :: Reserved ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & self ) -> Pupdr15R { Pupdr15R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & self ) -> Pupdr14R { Pupdr14R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & self ) -> Pupdr13R { Pupdr13R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & self ) -> Pupdr12R { Pupdr12R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & self ) -> Pupdr11R { Pupdr11R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & self ) -> Pupdr10R { Pupdr10R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & self ) -> Pupdr9R { Pupdr9R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & self ) -> Pupdr8R { Pupdr8R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & self ) -> Pupdr7R { Pupdr7R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & self ) -> Pupdr6R { Pupdr6R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & self ) -> Pupdr5R { Pupdr5R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & self ) -> Pupdr4R { Pupdr4R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & self ) -> Pupdr3R { Pupdr3R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & self ) -> Pupdr2R { Pupdr2R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & self ) -> Pupdr1R { Pupdr1R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & self ) -> Pupdr0R { Pupdr0R :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1677721600 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr15 ( & mut self ) -> _Pupdr15W { _Pupdr15W { w : self } } # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr14 ( & mut self ) -> _Pupdr14W { _Pupdr14W { w : self } } # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr13 ( & mut self ) -> _Pupdr13W { _Pupdr13W { w : self } } # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr12 ( & mut self ) -> _Pupdr12W { _Pupdr12W { w : self } } # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr11 ( & mut self ) -> _Pupdr11W { _Pupdr11W { w : self } } # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr10 ( & mut self ) -> _Pupdr10W { _Pupdr10W { w : self } } # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr9 ( & mut self ) -> _Pupdr9W { _Pupdr9W { w : self } } # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr8 ( & mut self ) -> _Pupdr8W { _Pupdr8W { w : self } } # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr7 ( & mut self ) -> _Pupdr7W { _Pupdr7W { w : self } } # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr6 ( & mut self ) -> _Pupdr6W { _Pupdr6W { w : self } } # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr5 ( & mut self ) -> _Pupdr5W { _Pupdr5W { w : self } } # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr4 ( & mut self ) -> _Pupdr4W { _Pupdr4W { w : self } } # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr3 ( & mut self ) -> _Pupdr3W { _Pupdr3W { w : self } } # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr2 ( & mut self ) -> _Pupdr2W { _Pupdr2W { w : self } } # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr1 ( & mut self ) -> _Pupdr1W { _Pupdr1W { w : self } } # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ] # [ inline ( always ) ] pub fn pupdr0 ( & mut self ) -> _Pupdr0W { _Pupdr0W { w : self } } } } # [ doc = "GPIO port input data register" ] pub struct Idr { register : VolatileCell < u32 > } # [ doc = "GPIO port input data register" ] pub mod idr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Idr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Idr15R { bits : u8 , } impl Idr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr14R { bits : u8 , } impl Idr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr13R { bits : u8 , } impl Idr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr12R { bits : u8 , } impl Idr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr11R { bits : u8 , } impl Idr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr10R { bits : u8 , } impl Idr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr9R { bits : u8 , } impl Idr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr8R { bits : u8 , } impl Idr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr7R { bits : u8 , } impl Idr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr6R { bits : u8 , } impl Idr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr5R { bits : u8 , } impl Idr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr4R { bits : u8 , } impl Idr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr3R { bits : u8 , } impl Idr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr2R { bits : u8 , } impl Idr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr1R { bits : u8 , } impl Idr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Idr0R { bits : u8 , } impl Idr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr15 ( & self ) -> Idr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr15R { bits } } # [ doc = "Bit 14 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr14 ( & self ) -> Idr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr14R { bits } } # [ doc = "Bit 13 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr13 ( & self ) -> Idr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr13R { bits } } # [ doc = "Bit 12 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr12 ( & self ) -> Idr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr12R { bits } } # [ doc = "Bit 11 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr11 ( & self ) -> Idr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr11R { bits } } # [ doc = "Bit 10 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr10 ( & self ) -> Idr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr10R { bits } } # [ doc = "Bit 9 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr9 ( & self ) -> Idr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr9R { bits } } # [ doc = "Bit 8 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr8 ( & self ) -> Idr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr8R { bits } } # [ doc = "Bit 7 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr7 ( & self ) -> Idr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr7R { bits } } # [ doc = "Bit 6 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr6 ( & self ) -> Idr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr6R { bits } } # [ doc = "Bit 5 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr5 ( & self ) -> Idr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr5R { bits } } # [ doc = "Bit 4 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr4 ( & self ) -> Idr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr4R { bits } } # [ doc = "Bit 3 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr3 ( & self ) -> Idr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr3R { bits } } # [ doc = "Bit 2 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr2 ( & self ) -> Idr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr2R { bits } } # [ doc = "Bit 1 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr1 ( & self ) -> Idr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr1R { bits } } # [ doc = "Bit 0 - Port input data (y = 0..15)" ] # [ inline ( always ) ] pub fn idr0 ( & self ) -> Idr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Idr0R { bits } } } } # [ doc = "GPIO port output data register" ] pub struct Odr { register : VolatileCell < u32 > } # [ doc = "GPIO port output data register" ] pub mod odr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Odr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Odr15R { bits : u8 , } impl Odr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr14R { bits : u8 , } impl Odr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr13R { bits : u8 , } impl Odr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr12R { bits : u8 , } impl Odr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr11R { bits : u8 , } impl Odr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr10R { bits : u8 , } impl Odr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr9R { bits : u8 , } impl Odr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr8R { bits : u8 , } impl Odr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr7R { bits : u8 , } impl Odr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr6R { bits : u8 , } impl Odr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr5R { bits : u8 , } impl Odr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr4R { bits : u8 , } impl Odr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr3R { bits : u8 , } impl Odr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr2R { bits : u8 , } impl Odr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr1R { bits : u8 , } impl Odr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Odr0R { bits : u8 , } impl Odr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Odr15W < 'a > { w : & 'a mut W , } impl < 'a > _Odr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr14W < 'a > { w : & 'a mut W , } impl < 'a > _Odr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr13W < 'a > { w : & 'a mut W , } impl < 'a > _Odr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr12W < 'a > { w : & 'a mut W , } impl < 'a > _Odr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr11W < 'a > { w : & 'a mut W , } impl < 'a > _Odr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr10W < 'a > { w : & 'a mut W , } impl < 'a > _Odr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr9W < 'a > { w : & 'a mut W , } impl < 'a > _Odr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr8W < 'a > { w : & 'a mut W , } impl < 'a > _Odr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr7W < 'a > { w : & 'a mut W , } impl < 'a > _Odr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr6W < 'a > { w : & 'a mut W , } impl < 'a > _Odr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr5W < 'a > { w : & 'a mut W , } impl < 'a > _Odr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr4W < 'a > { w : & 'a mut W , } impl < 'a > _Odr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr3W < 'a > { w : & 'a mut W , } impl < 'a > _Odr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr2W < 'a > { w : & 'a mut W , } impl < 'a > _Odr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr1W < 'a > { w : & 'a mut W , } impl < 'a > _Odr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Odr0W < 'a > { w : & 'a mut W , } impl < 'a > _Odr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & self ) -> Odr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr15R { bits } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & self ) -> Odr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr14R { bits } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & self ) -> Odr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr13R { bits } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & self ) -> Odr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr12R { bits } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & self ) -> Odr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr11R { bits } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & self ) -> Odr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr10R { bits } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & self ) -> Odr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr9R { bits } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & self ) -> Odr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr8R { bits } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & self ) -> Odr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr7R { bits } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & self ) -> Odr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr6R { bits } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & self ) -> Odr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr5R { bits } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & self ) -> Odr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr4R { bits } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & self ) -> Odr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr3R { bits } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & self ) -> Odr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr2R { bits } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & self ) -> Odr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr1R { bits } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & self ) -> Odr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Odr0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr15 ( & mut self ) -> _Odr15W { _Odr15W { w : self } } # [ doc = "Bit 14 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr14 ( & mut self ) -> _Odr14W { _Odr14W { w : self } } # [ doc = "Bit 13 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr13 ( & mut self ) -> _Odr13W { _Odr13W { w : self } } # [ doc = "Bit 12 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr12 ( & mut self ) -> _Odr12W { _Odr12W { w : self } } # [ doc = "Bit 11 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr11 ( & mut self ) -> _Odr11W { _Odr11W { w : self } } # [ doc = "Bit 10 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr10 ( & mut self ) -> _Odr10W { _Odr10W { w : self } } # [ doc = "Bit 9 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr9 ( & mut self ) -> _Odr9W { _Odr9W { w : self } } # [ doc = "Bit 8 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr8 ( & mut self ) -> _Odr8W { _Odr8W { w : self } } # [ doc = "Bit 7 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr7 ( & mut self ) -> _Odr7W { _Odr7W { w : self } } # [ doc = "Bit 6 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr6 ( & mut self ) -> _Odr6W { _Odr6W { w : self } } # [ doc = "Bit 5 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr5 ( & mut self ) -> _Odr5W { _Odr5W { w : self } } # [ doc = "Bit 4 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr4 ( & mut self ) -> _Odr4W { _Odr4W { w : self } } # [ doc = "Bit 3 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr3 ( & mut self ) -> _Odr3W { _Odr3W { w : self } } # [ doc = "Bit 2 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr2 ( & mut self ) -> _Odr2W { _Odr2W { w : self } } # [ doc = "Bit 1 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr1 ( & mut self ) -> _Odr1W { _Odr1W { w : self } } # [ doc = "Bit 0 - Port output data (y = 0..15)" ] # [ inline ( always ) ] pub fn odr0 ( & mut self ) -> _Odr0W { _Odr0W { w : self } } } } # [ doc = "GPIO port bit set/reset register" ] pub struct Bsrr { register : VolatileCell < u32 > } # [ doc = "GPIO port bit set/reset register" ] pub mod bsrr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bsrr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Values that can be written to the field `BR15`" ] pub enum Br15W { # [ doc = "0: No action on the corresponding ODRx bit" ] NoAction , # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] SetResetBit } impl Br15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Br15W :: NoAction => 0 , Br15W :: SetResetBit => 1 } } } # [ doc = r" Proxy" ] pub struct _Br15W < 'a > { w : & 'a mut W , } impl < 'a > _Br15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR14`" ] pub type Br14W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br14W < 'a > { w : & 'a mut W , } impl < 'a > _Br14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR13`" ] pub type Br13W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br13W < 'a > { w : & 'a mut W , } impl < 'a > _Br13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR12`" ] pub type Br12W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br12W < 'a > { w : & 'a mut W , } impl < 'a > _Br12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR11`" ] pub type Br11W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br11W < 'a > { w : & 'a mut W , } impl < 'a > _Br11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR10`" ] pub type Br10W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br10W < 'a > { w : & 'a mut W , } impl < 'a > _Br10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR9`" ] pub type Br9W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br9W < 'a > { w : & 'a mut W , } impl < 'a > _Br9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR8`" ] pub type Br8W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br8W < 'a > { w : & 'a mut W , } impl < 'a > _Br8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR7`" ] pub type Br7W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br7W < 'a > { w : & 'a mut W , } impl < 'a > _Br7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR6`" ] pub type Br6W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br6W < 'a > { w : & 'a mut W , } impl < 'a > _Br6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR5`" ] pub type Br5W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br5W < 'a > { w : & 'a mut W , } impl < 'a > _Br5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR4`" ] pub type Br4W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br4W < 'a > { w : & 'a mut W , } impl < 'a > _Br4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR3`" ] pub type Br3W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br3W < 'a > { w : & 'a mut W , } impl < 'a > _Br3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR2`" ] pub type Br2W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br2W < 'a > { w : & 'a mut W , } impl < 'a > _Br2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR1`" ] pub type Br1W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br1W < 'a > { w : & 'a mut W , } impl < 'a > _Br1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BR0`" ] pub type Br0W = Br15W ; # [ doc = r" Proxy" ] pub struct _Br0W < 'a > { w : & 'a mut W , } impl < 'a > _Br0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Br0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS15`" ] pub type Bs15W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs15W < 'a > { w : & 'a mut W , } impl < 'a > _Bs15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS14`" ] pub type Bs14W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs14W < 'a > { w : & 'a mut W , } impl < 'a > _Bs14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS13`" ] pub type Bs13W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs13W < 'a > { w : & 'a mut W , } impl < 'a > _Bs13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS12`" ] pub type Bs12W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs12W < 'a > { w : & 'a mut W , } impl < 'a > _Bs12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS11`" ] pub type Bs11W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs11W < 'a > { w : & 'a mut W , } impl < 'a > _Bs11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS10`" ] pub type Bs10W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs10W < 'a > { w : & 'a mut W , } impl < 'a > _Bs10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS9`" ] pub type Bs9W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs9W < 'a > { w : & 'a mut W , } impl < 'a > _Bs9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS8`" ] pub type Bs8W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs8W < 'a > { w : & 'a mut W , } impl < 'a > _Bs8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS7`" ] pub type Bs7W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs7W < 'a > { w : & 'a mut W , } impl < 'a > _Bs7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS6`" ] pub type Bs6W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs6W < 'a > { w : & 'a mut W , } impl < 'a > _Bs6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS5`" ] pub type Bs5W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs5W < 'a > { w : & 'a mut W , } impl < 'a > _Bs5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS4`" ] pub type Bs4W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs4W < 'a > { w : & 'a mut W , } impl < 'a > _Bs4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS3`" ] pub type Bs3W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs3W < 'a > { w : & 'a mut W , } impl < 'a > _Bs3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS2`" ] pub type Bs2W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs2W < 'a > { w : & 'a mut W , } impl < 'a > _Bs2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS1`" ] pub type Bs1W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs1W < 'a > { w : & 'a mut W , } impl < 'a > _Bs1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `BS0`" ] pub type Bs0W = Br15W ; # [ doc = r" Proxy" ] pub struct _Bs0W < 'a > { w : & 'a mut W , } impl < 'a > _Bs0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Bs0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No action on the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn no_action ( self ) -> & 'a mut W { self . variant ( Br15W :: NoAction ) } # [ doc = "1: Sets/Resets the corresponding ODRx bit" ] # [ inline ( always ) ] pub fn set_reset_bit ( self ) -> & 'a mut W { self . variant ( Br15W :: SetResetBit ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br15 ( & mut self ) -> _Br15W { _Br15W { w : self } } # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br14 ( & mut self ) -> _Br14W { _Br14W { w : self } } # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br13 ( & mut self ) -> _Br13W { _Br13W { w : self } } # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br12 ( & mut self ) -> _Br12W { _Br12W { w : self } } # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br11 ( & mut self ) -> _Br11W { _Br11W { w : self } } # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br10 ( & mut self ) -> _Br10W { _Br10W { w : self } } # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br9 ( & mut self ) -> _Br9W { _Br9W { w : self } } # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br8 ( & mut self ) -> _Br8W { _Br8W { w : self } } # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br7 ( & mut self ) -> _Br7W { _Br7W { w : self } } # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br6 ( & mut self ) -> _Br6W { _Br6W { w : self } } # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br5 ( & mut self ) -> _Br5W { _Br5W { w : self } } # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br4 ( & mut self ) -> _Br4W { _Br4W { w : self } } # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br3 ( & mut self ) -> _Br3W { _Br3W { w : self } } # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br2 ( & mut self ) -> _Br2W { _Br2W { w : self } } # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ] # [ inline ( always ) ] pub fn br1 ( & mut self ) -> _Br1W { _Br1W { w : self } } # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn br0 ( & mut self ) -> _Br0W { _Br0W { w : self } } # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs15 ( & mut self ) -> _Bs15W { _Bs15W { w : self } } # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs14 ( & mut self ) -> _Bs14W { _Bs14W { w : self } } # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs13 ( & mut self ) -> _Bs13W { _Bs13W { w : self } } # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs12 ( & mut self ) -> _Bs12W { _Bs12W { w : self } } # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs11 ( & mut self ) -> _Bs11W { _Bs11W { w : self } } # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs10 ( & mut self ) -> _Bs10W { _Bs10W { w : self } } # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs9 ( & mut self ) -> _Bs9W { _Bs9W { w : self } } # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs8 ( & mut self ) -> _Bs8W { _Bs8W { w : self } } # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs7 ( & mut self ) -> _Bs7W { _Bs7W { w : self } } # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs6 ( & mut self ) -> _Bs6W { _Bs6W { w : self } } # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs5 ( & mut self ) -> _Bs5W { _Bs5W { w : self } } # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs4 ( & mut self ) -> _Bs4W { _Bs4W { w : self } } # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs3 ( & mut self ) -> _Bs3W { _Bs3W { w : self } } # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs2 ( & mut self ) -> _Bs2W { _Bs2W { w : self } } # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs1 ( & mut self ) -> _Bs1W { _Bs1W { w : self } } # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn bs0 ( & mut self ) -> _Bs0W { _Bs0W { w : self } } } } # [ doc = "GPIO port configuration lock register" ] pub struct Lckr { register : VolatileCell < u32 > } # [ doc = "GPIO port configuration lock register" ] pub mod lckr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Lckr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `LCKK`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum LckkR { # [ doc = "0: Port configuration lock key not active" ] LockKeyNotActive , # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset\n                  or a peripheral reset occurs." ] LockKeyActive } impl LckkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { LckkR :: LockKeyNotActive => 0 , LckkR :: LockKeyActive => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> LckkR { match bits { 0 => LckkR :: LockKeyNotActive , 1 => LckkR :: LockKeyActive , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `LockKeyNotActive`" ] # [ inline ( always ) ] pub fn is_lock_key_not_active ( & self ) -> bool { * self == LckkR :: LockKeyNotActive } # [ doc = "Checks if the value of the field is `LockKeyActive`" ] # [ inline ( always ) ] pub fn is_lock_key_active ( & self ) -> bool { * self == LckkR :: LockKeyActive } } # [ doc = "Possible values of the field `LCK15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Lck15R { # [ doc = "0: Port configuration not locked" ] LockKeyNotActive , # [ doc = "1: Port configuration locked" ] LockKeyActive } impl Lck15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Lck15R :: LockKeyNotActive => 0 , Lck15R :: LockKeyActive => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Lck15R { match bits { 0 => Lck15R :: LockKeyNotActive , 1 => Lck15R :: LockKeyActive , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `LockKeyNotActive`" ] # [ inline ( always ) ] pub fn is_lock_key_not_active ( & self ) -> bool { * self == Lck15R :: LockKeyNotActive } # [ doc = "Checks if the value of the field is `LockKeyActive`" ] # [ inline ( always ) ] pub fn is_lock_key_active ( & self ) -> bool { * self == Lck15R :: LockKeyActive } } # [ doc = "Possible values of the field `LCK14`" ] pub type Lck14R = Lck15R ; # [ doc = "Possible values of the field `LCK13`" ] pub type Lck13R = Lck15R ; # [ doc = "Possible values of the field `LCK12`" ] pub type Lck12R = Lck15R ; # [ doc = "Possible values of the field `LCK11`" ] pub type Lck11R = Lck15R ; # [ doc = "Possible values of the field `LCK10`" ] pub type Lck10R = Lck15R ; # [ doc = "Possible values of the field `LCK9`" ] pub type Lck9R = Lck15R ; # [ doc = "Possible values of the field `LCK8`" ] pub type Lck8R = Lck15R ; # [ doc = "Possible values of the field `LCK7`" ] pub type Lck7R = Lck15R ; # [ doc = "Possible values of the field `LCK6`" ] pub type Lck6R = Lck15R ; # [ doc = "Possible values of the field `LCK5`" ] pub type Lck5R = Lck15R ; # [ doc = "Possible values of the field `LCK4`" ] pub type Lck4R = Lck15R ; # [ doc = "Possible values of the field `LCK3`" ] pub type Lck3R = Lck15R ; # [ doc = "Possible values of the field `LCK2`" ] pub type Lck2R = Lck15R ; # [ doc = "Possible values of the field `LCK1`" ] pub type Lck1R = Lck15R ; # [ doc = "Possible values of the field `LCK0`" ] pub type Lck0R = Lck15R ; # [ doc = "Values that can be written to the field `LCKK`" ] pub enum LckkW { # [ doc = "0: Port configuration lock key not active" ] LockKeyNotActive , # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset\n                  or a peripheral reset occurs." ] LockKeyActive } impl LckkW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { LckkW :: LockKeyNotActive => 0 , LckkW :: LockKeyActive => 1 } } } # [ doc = r" Proxy" ] pub struct _LckkW < 'a > { w : & 'a mut W , } impl < 'a > _LckkW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : LckkW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration lock key not active" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( LckkW :: LockKeyNotActive ) } # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset or a peripheral reset occurs." ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( LckkW :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK15`" ] pub enum Lck15W { # [ doc = "0: Port configuration not locked" ] LockKeyNotActive , # [ doc = "1: Port configuration locked" ] LockKeyActive } impl Lck15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Lck15W :: LockKeyNotActive => 0 , Lck15W :: LockKeyActive => 1 } } } # [ doc = r" Proxy" ] pub struct _Lck15W < 'a > { w : & 'a mut W , } impl < 'a > _Lck15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK14`" ] pub type Lck14W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck14W < 'a > { w : & 'a mut W , } impl < 'a > _Lck14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK13`" ] pub type Lck13W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck13W < 'a > { w : & 'a mut W , } impl < 'a > _Lck13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK12`" ] pub type Lck12W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck12W < 'a > { w : & 'a mut W , } impl < 'a > _Lck12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK11`" ] pub type Lck11W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck11W < 'a > { w : & 'a mut W , } impl < 'a > _Lck11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK10`" ] pub type Lck10W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck10W < 'a > { w : & 'a mut W , } impl < 'a > _Lck10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK9`" ] pub type Lck9W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck9W < 'a > { w : & 'a mut W , } impl < 'a > _Lck9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK8`" ] pub type Lck8W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck8W < 'a > { w : & 'a mut W , } impl < 'a > _Lck8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK7`" ] pub type Lck7W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck7W < 'a > { w : & 'a mut W , } impl < 'a > _Lck7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK6`" ] pub type Lck6W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck6W < 'a > { w : & 'a mut W , } impl < 'a > _Lck6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK5`" ] pub type Lck5W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck5W < 'a > { w : & 'a mut W , } impl < 'a > _Lck5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK4`" ] pub type Lck4W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck4W < 'a > { w : & 'a mut W , } impl < 'a > _Lck4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK3`" ] pub type Lck3W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck3W < 'a > { w : & 'a mut W , } impl < 'a > _Lck3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK2`" ] pub type Lck2W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck2W < 'a > { w : & 'a mut W , } impl < 'a > _Lck2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK1`" ] pub type Lck1W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck1W < 'a > { w : & 'a mut W , } impl < 'a > _Lck1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LCK0`" ] pub type Lck0W = Lck15W ; # [ doc = r" Proxy" ] pub struct _Lck0W < 'a > { w : & 'a mut W , } impl < 'a > _Lck0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Lck0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Port configuration not locked" ] # [ inline ( always ) ] pub fn lock_key_not_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyNotActive ) } # [ doc = "1: Port configuration locked" ] # [ inline ( always ) ] pub fn lock_key_active ( self ) -> & 'a mut W { self . variant ( Lck15W :: LockKeyActive ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & self ) -> LckkR { LckkR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & self ) -> Lck15R { Lck15R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & self ) -> Lck14R { Lck14R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & self ) -> Lck13R { Lck13R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & self ) -> Lck12R { Lck12R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & self ) -> Lck11R { Lck11R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & self ) -> Lck10R { Lck10R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & self ) -> Lck9R { Lck9R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & self ) -> Lck8R { Lck8R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & self ) -> Lck7R { Lck7R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & self ) -> Lck6R { Lck6R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & self ) -> Lck5R { Lck5R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & self ) -> Lck4R { Lck4R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & self ) -> Lck3R { Lck3R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & self ) -> Lck2R { Lck2R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & self ) -> Lck1R { Lck1R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & self ) -> Lck0R { Lck0R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lckk ( & mut self ) -> _LckkW { _LckkW { w : self } } # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck15 ( & mut self ) -> _Lck15W { _Lck15W { w : self } } # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck14 ( & mut self ) -> _Lck14W { _Lck14W { w : self } } # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck13 ( & mut self ) -> _Lck13W { _Lck13W { w : self } } # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck12 ( & mut self ) -> _Lck12W { _Lck12W { w : self } } # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck11 ( & mut self ) -> _Lck11W { _Lck11W { w : self } } # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck10 ( & mut self ) -> _Lck10W { _Lck10W { w : self } } # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck9 ( & mut self ) -> _Lck9W { _Lck9W { w : self } } # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck8 ( & mut self ) -> _Lck8W { _Lck8W { w : self } } # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck7 ( & mut self ) -> _Lck7W { _Lck7W { w : self } } # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck6 ( & mut self ) -> _Lck6W { _Lck6W { w : self } } # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck5 ( & mut self ) -> _Lck5W { _Lck5W { w : self } } # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck4 ( & mut self ) -> _Lck4W { _Lck4W { w : self } } # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck3 ( & mut self ) -> _Lck3W { _Lck3W { w : self } } # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck2 ( & mut self ) -> _Lck2W { _Lck2W { w : self } } # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck1 ( & mut self ) -> _Lck1W { _Lck1W { w : self } } # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ] # [ inline ( always ) ] pub fn lck0 ( & mut self ) -> _Lck0W { _Lck0W { w : self } } } } # [ doc = "GPIO alternate function low register" ] pub struct Afrl { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function low register" ] pub mod afrl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `AFRL7`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Afrl7R { # [ doc = "0000: AF0" ] Af0 , # [ doc = "0001: AF1" ] Af1 , # [ doc = "0010: AF2" ] Af2 , # [ doc = "0011: AF3" ] Af3 , # [ doc = "0100: AF4" ] Af4 , # [ doc = "0101: AF5" ] Af5 , # [ doc = "0110: AF6" ] Af6 , # [ doc = "0111: AF7" ] Af7 , # [ doc = "1000: AF8" ] Af8 , # [ doc = "1001: AF9" ] Af9 , # [ doc = "1010: AF10" ] Af10 , # [ doc = "1011: AF11" ] Af11 , # [ doc = "1100: AF12" ] Af12 , # [ doc = "1101: AF13" ] Af13 , # [ doc = "1110: AF14" ] Af14 , # [ doc = "1111: AF15" ] Af15 } impl Afrl7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Afrl7R :: Af0 => 0 , Afrl7R :: Af1 => 1 , Afrl7R :: Af2 => 2 , Afrl7R :: Af3 => 3 , Afrl7R :: Af4 => 4 , Afrl7R :: Af5 => 5 , Afrl7R :: Af6 => 6 , Afrl7R :: Af7 => 7 , Afrl7R :: Af8 => 8 , Afrl7R :: Af9 => 9 , Afrl7R :: Af10 => 10 , Afrl7R :: Af11 => 11 , Afrl7R :: Af12 => 12 , Afrl7R :: Af13 => 13 , Afrl7R :: Af14 => 14 , Afrl7R :: Af15 => 15 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Afrl7R { match bits { 0 => Afrl7R :: Af0 , 1 => Afrl7R :: Af1 , 2 => Afrl7R :: Af2 , 3 => Afrl7R :: Af3 , 4 => Afrl7R :: Af4 , 5 => Afrl7R :: Af5 , 6 => Afrl7R :: Af6 , 7 => Afrl7R :: Af7 , 8 => Afrl7R :: Af8 , 9 => Afrl7R :: Af9 , 10 => Afrl7R :: Af10 , 11 => Afrl7R :: Af11 , 12 => Afrl7R :: Af12 , 13 => Afrl7R :: Af13 , 14 => Afrl7R :: Af14 , 15 => Afrl7R :: Af15 , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `Af0`" ] # [ inline ( always ) ] pub fn is_af0 ( & self ) -> bool { * self == Afrl7R :: Af0 } # [ doc = "Checks if the value of the field is `Af1`" ] # [ inline ( always ) ] pub fn is_af1 ( & self ) -> bool { * self == Afrl7R :: Af1 } # [ doc = "Checks if the value of the field is `Af2`" ] # [ inline ( always ) ] pub fn is_af2 ( & self ) -> bool { * self == Afrl7R :: Af2 } # [ doc = "Checks if the value of the field is `Af3`" ] # [ inline ( always ) ] pub fn is_af3 ( & self ) -> bool { * self == Afrl7R :: Af3 } # [ doc = "Checks if the value of the field is `Af4`" ] # [ inline ( always ) ] pub fn is_af4 ( & self ) -> bool { * self == Afrl7R :: Af4 } # [ doc = "Checks if the value of the field is `Af5`" ] # [ inline ( always ) ] pub fn is_af5 ( & self ) -> bool { * self == Afrl7R :: Af5 } # [ doc = "Checks if the value of the field is `Af6`" ] # [ inline ( always ) ] pub fn is_af6 ( & self ) -> bool { * self == Afrl7R :: Af6 } # [ doc = "Checks if the value of the field is `Af7`" ] # [ inline ( always ) ] pub fn is_af7 ( & self ) -> bool { * self == Afrl7R :: Af7 } # [ doc = "Checks if the value of the field is `Af8`" ] # [ inline ( always ) ] pub fn is_af8 ( & self ) -> bool { * self == Afrl7R :: Af8 } # [ doc = "Checks if the value of the field is `Af9`" ] # [ inline ( always ) ] pub fn is_af9 ( & self ) -> bool { * self == Afrl7R :: Af9 } # [ doc = "Checks if the value of the field is `Af10`" ] # [ inline ( always ) ] pub fn is_af10 ( & self ) -> bool { * self == Afrl7R :: Af10 } # [ doc = "Checks if the value of the field is `Af11`" ] # [ inline ( always ) ] pub fn is_af11 ( & self ) -> bool { * self == Afrl7R :: Af11 } # [ doc = "Checks if the value of the field is `Af12`" ] # [ inline ( always ) ] pub fn is_af12 ( & self ) -> bool { * self == Afrl7R :: Af12 } # [ doc = "Checks if the value of the field is `Af13`" ] # [ inline ( always ) ] pub fn is_af13 ( & self ) -> bool { * self == Afrl7R :: Af13 } # [ doc = "Checks if the value of the field is `Af14`" ] # [ inline ( always ) ] pub fn is_af14 ( & self ) -> bool { * self == Afrl7R :: Af14 } # [ doc = "Checks if the value of the field is `Af15`" ] # [ inline ( always ) ] pub fn is_af15 ( & self ) -> bool { * self == Afrl7R :: Af15 } } # [ doc = "Possible values of the field `AFRL6`" ] pub type Afrl6R = Afrl7R ; # [ doc = "Possible values of the field `AFRL5`" ] pub type Afrl5R = Afrl7R ; # [ doc = "Possible values of the field `AFRL4`" ] pub type Afrl4R = Afrl7R ; # [ doc = "Possible values of the field `AFRL3`" ] pub type Afrl3R = Afrl7R ; # [ doc = "Possible values of the field `AFRL2`" ] pub type Afrl2R = Afrl7R ; # [ doc = "Possible values of the field `AFRL1`" ] pub type Afrl1R = Afrl7R ; # [ doc = "Possible values of the field `AFRL0`" ] pub type Afrl0R = Afrl7R ; # [ doc = "Values that can be written to the field `AFRL7`" ] pub enum Afrl7W { # [ doc = "0000: AF0" ] Af0 , # [ doc = "0001: AF1" ] Af1 , # [ doc = "0010: AF2" ] Af2 , # [ doc = "0011: AF3" ] Af3 , # [ doc = "0100: AF4" ] Af4 , # [ doc = "0101: AF5" ] Af5 , # [ doc = "0110: AF6" ] Af6 , # [ doc = "0111: AF7" ] Af7 , # [ doc = "1000: AF8" ] Af8 , # [ doc = "1001: AF9" ] Af9 , # [ doc = "1010: AF10" ] Af10 , # [ doc = "1011: AF11" ] Af11 , # [ doc = "1100: AF12" ] Af12 , # [ doc = "1101: AF13" ] Af13 , # [ doc = "1110: AF14" ] Af14 , # [ doc = "1111: AF15" ] Af15 } impl Afrl7W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Afrl7W :: Af0 => 0 , Afrl7W :: Af1 => 1 , Afrl7W :: Af2 => 2 , Afrl7W :: Af3 => 3 , Afrl7W :: Af4 => 4 , Afrl7W :: Af5 => 5 , Afrl7W :: Af6 => 6 , Afrl7W :: Af7 => 7 , Afrl7W :: Af8 => 8 , Afrl7W :: Af9 => 9 , Afrl7W :: Af10 => 10 , Afrl7W :: Af11 => 11 , Afrl7W :: Af12 => 12 , Afrl7W :: Af13 => 13 , Afrl7W :: Af14 => 14 , Afrl7W :: Af15 => 15 } } } # [ doc = r" Proxy" ] pub struct _Afrl7W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl7W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL6`" ] pub type Afrl6W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl6W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl6W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL5`" ] pub type Afrl5W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl5W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl5W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL4`" ] pub type Afrl4W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl4W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl4W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL3`" ] pub type Afrl3W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl3W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl3W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL2`" ] pub type Afrl2W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl2W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL1`" ] pub type Afrl1W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl1W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl1W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRL0`" ] pub type Afrl0W = Afrl7W ; # [ doc = r" Proxy" ] pub struct _Afrl0W < 'a > { w : & 'a mut W , } impl < 'a > _Afrl0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrl0W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrl7W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & self ) -> Afrl7R { Afrl7R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & self ) -> Afrl6R { Afrl6R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & self ) -> Afrl5R { Afrl5R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & self ) -> Afrl4R { Afrl4R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & self ) -> Afrl3R { Afrl3R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & self ) -> Afrl2R { Afrl2R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & self ) -> Afrl1R { Afrl1R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & self ) -> Afrl0R { Afrl0R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl7 ( & mut self ) -> _Afrl7W { _Afrl7W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl6 ( & mut self ) -> _Afrl6W { _Afrl6W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl5 ( & mut self ) -> _Afrl5W { _Afrl5W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl4 ( & mut self ) -> _Afrl4W { _Afrl4W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl3 ( & mut self ) -> _Afrl3W { _Afrl3W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl2 ( & mut self ) -> _Afrl2W { _Afrl2W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl1 ( & mut self ) -> _Afrl1W { _Afrl1W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ] # [ inline ( always ) ] pub fn afrl0 ( & mut self ) -> _Afrl0W { _Afrl0W { w : self } } } } # [ doc = "GPIO alternate function high register" ] pub struct Afrh { register : VolatileCell < u32 > } # [ doc = "GPIO alternate function high register" ] pub mod afrh { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Afrh { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `AFRH15`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Afrh15R { # [ doc = "0000: AF0" ] Af0 , # [ doc = "0001: AF1" ] Af1 , # [ doc = "0010: AF2" ] Af2 , # [ doc = "0011: AF3" ] Af3 , # [ doc = "0100: AF4" ] Af4 , # [ doc = "0101: AF5" ] Af5 , # [ doc = "0110: AF6" ] Af6 , # [ doc = "0111: AF7" ] Af7 , # [ doc = "1000: AF8" ] Af8 , # [ doc = "1001: AF9" ] Af9 , # [ doc = "1010: AF10" ] Af10 , # [ doc = "1011: AF11" ] Af11 , # [ doc = "1100: AF12" ] Af12 , # [ doc = "1101: AF13" ] Af13 , # [ doc = "1110: AF14" ] Af14 , # [ doc = "1111: AF15" ] Af15 } impl Afrh15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Afrh15R :: Af0 => 0 , Afrh15R :: Af1 => 1 , Afrh15R :: Af2 => 2 , Afrh15R :: Af3 => 3 , Afrh15R :: Af4 => 4 , Afrh15R :: Af5 => 5 , Afrh15R :: Af6 => 6 , Afrh15R :: Af7 => 7 , Afrh15R :: Af8 => 8 , Afrh15R :: Af9 => 9 , Afrh15R :: Af10 => 10 , Afrh15R :: Af11 => 11 , Afrh15R :: Af12 => 12 , Afrh15R :: Af13 => 13 , Afrh15R :: Af14 => 14 , Afrh15R :: Af15 => 15 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Afrh15R { match bits { 0 => Afrh15R :: Af0 , 1 => Afrh15R :: Af1 , 2 => Afrh15R :: Af2 , 3 => Afrh15R :: Af3 , 4 => Afrh15R :: Af4 , 5 => Afrh15R :: Af5 , 6 => Afrh15R :: Af6 , 7 => Afrh15R :: Af7 , 8 => Afrh15R :: Af8 , 9 => Afrh15R :: Af9 , 10 => Afrh15R :: Af10 , 11 => Afrh15R :: Af11 , 12 => Afrh15R :: Af12 , 13 => Afrh15R :: Af13 , 14 => Afrh15R :: Af14 , 15 => Afrh15R :: Af15 , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `Af0`" ] # [ inline ( always ) ] pub fn is_af0 ( & self ) -> bool { * self == Afrh15R :: Af0 } # [ doc = "Checks if the value of the field is `Af1`" ] # [ inline ( always ) ] pub fn is_af1 ( & self ) -> bool { * self == Afrh15R :: Af1 } # [ doc = "Checks if the value of the field is `Af2`" ] # [ inline ( always ) ] pub fn is_af2 ( & self ) -> bool { * self == Afrh15R :: Af2 } # [ doc = "Checks if the value of the field is `Af3`" ] # [ inline ( always ) ] pub fn is_af3 ( & self ) -> bool { * self == Afrh15R :: Af3 } # [ doc = "Checks if the value of the field is `Af4`" ] # [ inline ( always ) ] pub fn is_af4 ( & self ) -> bool { * self == Afrh15R :: Af4 } # [ doc = "Checks if the value of the field is `Af5`" ] # [ inline ( always ) ] pub fn is_af5 ( & self ) -> bool { * self == Afrh15R :: Af5 } # [ doc = "Checks if the value of the field is `Af6`" ] # [ inline ( always ) ] pub fn is_af6 ( & self ) -> bool { * self == Afrh15R :: Af6 } # [ doc = "Checks if the value of the field is `Af7`" ] # [ inline ( always ) ] pub fn is_af7 ( & self ) -> bool { * self == Afrh15R :: Af7 } # [ doc = "Checks if the value of the field is `Af8`" ] # [ inline ( always ) ] pub fn is_af8 ( & self ) -> bool { * self == Afrh15R :: Af8 } # [ doc = "Checks if the value of the field is `Af9`" ] # [ inline ( always ) ] pub fn is_af9 ( & self ) -> bool { * self == Afrh15R :: Af9 } # [ doc = "Checks if the value of the field is `Af10`" ] # [ inline ( always ) ] pub fn is_af10 ( & self ) -> bool { * self == Afrh15R :: Af10 } # [ doc = "Checks if the value of the field is `Af11`" ] # [ inline ( always ) ] pub fn is_af11 ( & self ) -> bool { * self == Afrh15R :: Af11 } # [ doc = "Checks if the value of the field is `Af12`" ] # [ inline ( always ) ] pub fn is_af12 ( & self ) -> bool { * self == Afrh15R :: Af12 } # [ doc = "Checks if the value of the field is `Af13`" ] # [ inline ( always ) ] pub fn is_af13 ( & self ) -> bool { * self == Afrh15R :: Af13 } # [ doc = "Checks if the value of the field is `Af14`" ] # [ inline ( always ) ] pub fn is_af14 ( & self ) -> bool { * self == Afrh15R :: Af14 } # [ doc = "Checks if the value of the field is `Af15`" ] # [ inline ( always ) ] pub fn is_af15 ( & self ) -> bool { * self == Afrh15R :: Af15 } } # [ doc = "Possible values of the field `AFRH14`" ] pub type Afrh14R = Afrh15R ; # [ doc = "Possible values of the field `AFRH13`" ] pub type Afrh13R = Afrh15R ; # [ doc = "Possible values of the field `AFRH12`" ] pub type Afrh12R = Afrh15R ; # [ doc = "Possible values of the field `AFRH11`" ] pub type Afrh11R = Afrh15R ; # [ doc = "Possible values of the field `AFRH10`" ] pub type Afrh10R = Afrh15R ; # [ doc = "Possible values of the field `AFRH9`" ] pub type Afrh9R = Afrh15R ; # [ doc = "Possible values of the field `AFRH8`" ] pub type Afrh8R = Afrh15R ; # [ doc = "Values that can be written to the field `AFRH15`" ] pub enum Afrh15W { # [ doc = "0000: AF0" ] Af0 , # [ doc = "0001: AF1" ] Af1 , # [ doc = "0010: AF2" ] Af2 , # [ doc = "0011: AF3" ] Af3 , # [ doc = "0100: AF4" ] Af4 , # [ doc = "0101: AF5" ] Af5 , # [ doc = "0110: AF6" ] Af6 , # [ doc = "0111: AF7" ] Af7 , # [ doc = "1000: AF8" ] Af8 , # [ doc = "1001: AF9" ] Af9 , # [ doc = "1010: AF10" ] Af10 , # [ doc = "1011: AF11" ] Af11 , # [ doc = "1100: AF12" ] Af12 , # [ doc = "1101: AF13" ] Af13 , # [ doc = "1110: AF14" ] Af14 , # [ doc = "1111: AF15" ] Af15 } impl Afrh15W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Afrh15W :: Af0 => 0 , Afrh15W :: Af1 => 1 , Afrh15W :: Af2 => 2 , Afrh15W :: Af3 => 3 , Afrh15W :: Af4 => 4 , Afrh15W :: Af5 => 5 , Afrh15W :: Af6 => 6 , Afrh15W :: Af7 => 7 , Afrh15W :: Af8 => 8 , Afrh15W :: Af9 => 9 , Afrh15W :: Af10 => 10 , Afrh15W :: Af11 => 11 , Afrh15W :: Af12 => 12 , Afrh15W :: Af13 => 13 , Afrh15W :: Af14 => 14 , Afrh15W :: Af15 => 15 } } } # [ doc = r" Proxy" ] pub struct _Afrh15W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh15W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH14`" ] pub type Afrh14W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh14W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh14W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH13`" ] pub type Afrh13W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh13W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh13W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH12`" ] pub type Afrh12W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh12W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh12W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH11`" ] pub type Afrh11W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh11W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh11W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH10`" ] pub type Afrh10W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh10W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh10W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH9`" ] pub type Afrh9W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh9W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh9W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `AFRH8`" ] pub type Afrh8W = Afrh15W ; # [ doc = r" Proxy" ] pub struct _Afrh8W < 'a > { w : & 'a mut W , } impl < 'a > _Afrh8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Afrh8W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: AF0" ] # [ inline ( always ) ] pub fn af0 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af0 ) } # [ doc = "0001: AF1" ] # [ inline ( always ) ] pub fn af1 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af1 ) } # [ doc = "0010: AF2" ] # [ inline ( always ) ] pub fn af2 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af2 ) } # [ doc = "0011: AF3" ] # [ inline ( always ) ] pub fn af3 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af3 ) } # [ doc = "0100: AF4" ] # [ inline ( always ) ] pub fn af4 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af4 ) } # [ doc = "0101: AF5" ] # [ inline ( always ) ] pub fn af5 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af5 ) } # [ doc = "0110: AF6" ] # [ inline ( always ) ] pub fn af6 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af6 ) } # [ doc = "0111: AF7" ] # [ inline ( always ) ] pub fn af7 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af7 ) } # [ doc = "1000: AF8" ] # [ inline ( always ) ] pub fn af8 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af8 ) } # [ doc = "1001: AF9" ] # [ inline ( always ) ] pub fn af9 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af9 ) } # [ doc = "1010: AF10" ] # [ inline ( always ) ] pub fn af10 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af10 ) } # [ doc = "1011: AF11" ] # [ inline ( always ) ] pub fn af11 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af11 ) } # [ doc = "1100: AF12" ] # [ inline ( always ) ] pub fn af12 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af12 ) } # [ doc = "1101: AF13" ] # [ inline ( always ) ] pub fn af13 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af13 ) } # [ doc = "1110: AF14" ] # [ inline ( always ) ] pub fn af14 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af14 ) } # [ doc = "1111: AF15" ] # [ inline ( always ) ] pub fn af15 ( self ) -> & 'a mut W { self . variant ( Afrh15W :: Af15 ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & self ) -> Afrh15R { Afrh15R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & self ) -> Afrh14R { Afrh14R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & self ) -> Afrh13R { Afrh13R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & self ) -> Afrh12R { Afrh12R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & self ) -> Afrh11R { Afrh11R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & self ) -> Afrh10R { Afrh10R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & self ) -> Afrh9R { Afrh9R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & self ) -> Afrh8R { Afrh8R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh15 ( & mut self ) -> _Afrh15W { _Afrh15W { w : self } } # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh14 ( & mut self ) -> _Afrh14W { _Afrh14W { w : self } } # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh13 ( & mut self ) -> _Afrh13W { _Afrh13W { w : self } } # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh12 ( & mut self ) -> _Afrh12W { _Afrh12W { w : self } } # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh11 ( & mut self ) -> _Afrh11W { _Afrh11W { w : self } } # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh10 ( & mut self ) -> _Afrh10W { _Afrh10W { w : self } } # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh9 ( & mut self ) -> _Afrh9W { _Afrh9W { w : self } } # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ] # [ inline ( always ) ] pub fn afrh8 ( & mut self ) -> _Afrh8W { _Afrh8W { w : self } } } } } # [ doc = "General-purpose I/Os" ] pub struct Gpioa { register_block : gpioa :: RegisterBlock } impl Deref for Gpioa { type Target = gpioa :: RegisterBlock ; fn deref ( & self ) -> & gpioa :: RegisterBlock { & self . register_block } } # [ doc = "System configuration controller" ] pub const SYSCFG : Peripheral < Syscfg > = unsafe { Peripheral :: new ( 1073821696 ) } ; # [ doc = "System configuration controller" ] pub mod syscfg { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - memory remap register" ] pub memrm : Memrm , # [ doc = "0x04 - peripheral mode configuration register" ] pub pmc : Pmc , # [ doc = "0x08 - external interrupt configuration register 1" ] pub exticr1 : Exticr1 , # [ doc = "0x0c - external interrupt configuration register 2" ] pub exticr2 : Exticr2 , # [ doc = "0x10 - external interrupt configuration register 3" ] pub exticr3 : Exticr3 , # [ doc = "0x14 - external interrupt configuration register 4" ] pub exticr4 : Exticr4 , _reserved0 : [ u8 ; 8usize ] , # [ doc = "0x20 - Compensation cell control register" ] pub cmpcr : Cmpcr , } # [ doc = "memory remap register" ] pub struct Memrm { register : VolatileCell < u32 > } # [ doc = "memory remap register" ] pub mod memrm { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Memrm { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `MEM_MODE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum MemModeR { # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ] MainFlash , # [ doc = "01: System Flash memory mapped at 0x0000 0000" ] SystemFlash , # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ] EmbeddedSram , # [ doc = r" Reserved" ] _Reserved ( u8 ) } impl MemModeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { MemModeR :: MainFlash => 0 , MemModeR :: SystemFlash => 1 , MemModeR :: EmbeddedSram => 3 , MemModeR :: _Reserved ( bits ) => bits } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> MemModeR { match bits { 0 => MemModeR :: MainFlash , 1 => MemModeR :: SystemFlash , 3 => MemModeR :: EmbeddedSram , i => MemModeR :: _Reserved ( i ) , } } # [ doc = "Checks if the value of the field is `MainFlash`" ] # [ inline ( always ) ] pub fn is_main_flash ( & self ) -> bool { * self == MemModeR :: MainFlash } # [ doc = "Checks if the value of the field is `SystemFlash`" ] # [ inline ( always ) ] pub fn is_system_flash ( & self ) -> bool { * self == MemModeR :: SystemFlash } # [ doc = "Checks if the value of the field is `EmbeddedSram`" ] # [ inline ( always ) ] pub fn is_embedded_sram ( & self ) -> bool { * self == MemModeR :: EmbeddedSram } } # [ doc = "Values that can be written to the field `MEM_MODE`" ] pub enum MemModeW { # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ] MainFlash , # [ doc = "01: System Flash memory mapped at 0x0000 0000" ] SystemFlash , # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ] EmbeddedSram } impl MemModeW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { MemModeW :: MainFlash => 0 , MemModeW :: SystemFlash => 1 , MemModeW :: EmbeddedSram => 3 } } } # [ doc = r" Proxy" ] pub struct _MemModeW < 'a > { w : & 'a mut W , } impl < 'a > _MemModeW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : MemModeW ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ] # [ inline ( always ) ] pub fn main_flash ( self ) -> & 'a mut W { self . variant ( MemModeW :: MainFlash ) } # [ doc = "01: System Flash memory mapped at 0x0000 0000" ] # [ inline ( always ) ] pub fn system_flash ( self ) -> & 'a mut W { self . variant ( MemModeW :: SystemFlash ) } # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ] # [ inline ( always ) ] pub fn embedded_sram ( self ) -> & 'a mut W { self . variant ( MemModeW :: EmbeddedSram ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - MEM_MODE" ] # [ inline ( always ) ] pub fn mem_mode ( & self ) -> MemModeR { MemModeR :: _from ( { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - MEM_MODE" ] # [ inline ( always ) ] pub fn mem_mode ( & mut self ) -> _MemModeW { _MemModeW { w : self } } } } # [ doc = "peripheral mode configuration register" ] pub struct Pmc { register : VolatileCell < u32 > } # [ doc = "peripheral mode configuration register" ] pub mod pmc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pmc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MiiRmiiSelR { bits : u8 , } impl MiiRmiiSelR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = "Possible values of the field `ADC1DC2`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Adc1dc2R { # [ doc = "0: No effect" ] MainFlash , # [ doc = "1: Refer to AN4073 on how to use this bit.\nNote: These bits can be set only if the following conditions are met:\n- ADC clock higher or equal to 30 MHz.\n- Only one ADCxDC2 bit must be selected if ADC conversions do not start\nat the same time and the sampling times differ.\n- These bits must not be set when the ADCDC1 bit is set in PWR_CR\nregister." ] SystemFlash } impl Adc1dc2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Adc1dc2R :: MainFlash => 0 , Adc1dc2R :: SystemFlash => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Adc1dc2R { match bits { 0 => Adc1dc2R :: MainFlash , 1 => Adc1dc2R :: SystemFlash , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `MainFlash`" ] # [ inline ( always ) ] pub fn is_main_flash ( & self ) -> bool { * self == Adc1dc2R :: MainFlash } # [ doc = "Checks if the value of the field is `SystemFlash`" ] # [ inline ( always ) ] pub fn is_system_flash ( & self ) -> bool { * self == Adc1dc2R :: SystemFlash } } # [ doc = r" Proxy" ] pub struct _MiiRmiiSelW < 'a > { w : & 'a mut W , } impl < 'a > _MiiRmiiSelW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `ADC1DC2`" ] pub enum Adc1dc2W { # [ doc = "0: No effect" ] MainFlash , # [ doc = "1: Refer to AN4073 on how to use this bit.\nNote: These bits can be set only if the following conditions are met:\n- ADC clock higher or equal to 30 MHz.\n- Only one ADCxDC2 bit must be selected if ADC conversions do not start\nat the same time and the sampling times differ.\n- These bits must not be set when the ADCDC1 bit is set in PWR_CR\nregister." ] SystemFlash } impl Adc1dc2W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Adc1dc2W :: MainFlash => 0 , Adc1dc2W :: SystemFlash => 1 } } } # [ doc = r" Proxy" ] pub struct _Adc1dc2W < 'a > { w : & 'a mut W , } impl < 'a > _Adc1dc2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Adc1dc2W ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No effect" ] # [ inline ( always ) ] pub fn main_flash ( self ) -> & 'a mut W { self . variant ( Adc1dc2W :: MainFlash ) } # [ doc = "1: Refer to AN4073 on how to use this bit. Note: These bits can be set only if the following conditions are met: - ADC clock higher or equal to 30 MHz. - Only one ADCxDC2 bit must be selected if ADC conversions do not start at the same time and the sampling times differ. - These bits must not be set when the ADCDC1 bit is set in PWR_CR register." ] # [ inline ( always ) ] pub fn system_flash ( self ) -> & 'a mut W { self . variant ( Adc1dc2W :: SystemFlash ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - Ethernet PHY interface selection" ] # [ inline ( always ) ] pub fn mii_rmii_sel ( & self ) -> MiiRmiiSelR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MiiRmiiSelR { bits } } # [ doc = "Bit 16 - ADC1DC2" ] # [ inline ( always ) ] pub fn adc1dc2 ( & self ) -> Adc1dc2R { Adc1dc2R :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - Ethernet PHY interface selection" ] # [ inline ( always ) ] pub fn mii_rmii_sel ( & mut self ) -> _MiiRmiiSelW { _MiiRmiiSelW { w : self } } # [ doc = "Bit 16 - ADC1DC2" ] # [ inline ( always ) ] pub fn adc1dc2 ( & mut self ) -> _Adc1dc2W { _Adc1dc2W { w : self } } } } # [ doc = "external interrupt configuration register 1" ] pub struct Exticr1 { register : VolatileCell < u32 > } # [ doc = "external interrupt configuration register 1" ] pub mod exticr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Exticr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `EXTI3`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum Exti3R { # [ doc = "0000: PA[x] pin" ] PaX , # [ doc = "0001: PB[x] pin" ] PbX , # [ doc = "0010: PC[x] pin" ] PcX , # [ doc = "0011: PD[x] pin" ] PdX , # [ doc = "0100: PE[x] pin" ] PeX , # [ doc = "0111: PH[x] pin" ] PhX , # [ doc = r" Reserved" ] _Reserved ( u8 ) } impl Exti3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { Exti3R :: PaX => 0 , Exti3R :: PbX => 1 , Exti3R :: PcX => 2 , Exti3R :: PdX => 3 , Exti3R :: PeX => 4 , Exti3R :: PhX => 7 , Exti3R :: _Reserved ( bits ) => bits } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> Exti3R { match bits { 0 => Exti3R :: PaX , 1 => Exti3R :: PbX , 2 => Exti3R :: PcX , 3 => Exti3R :: PdX , 4 => Exti3R :: PeX , 7 => Exti3R :: PhX , i => Exti3R :: _Reserved ( i ) , } } # [ doc = "Checks if the value of the field is `PaX`" ] # [ inline ( always ) ] pub fn is_pa_x ( & self ) -> bool { * self == Exti3R :: PaX } # [ doc = "Checks if the value of the field is `PbX`" ] # [ inline ( always ) ] pub fn is_pb_x ( & self ) -> bool { * self == Exti3R :: PbX } # [ doc = "Checks if the value of the field is `PcX`" ] # [ inline ( always ) ] pub fn is_pc_x ( & self ) -> bool { * self == Exti3R :: PcX } # [ doc = "Checks if the value of the field is `PdX`" ] # [ inline ( always ) ] pub fn is_pd_x ( & self ) -> bool { * self == Exti3R :: PdX } # [ doc = "Checks if the value of the field is `PeX`" ] # [ inline ( always ) ] pub fn is_pe_x ( & self ) -> bool { * self == Exti3R :: PeX } # [ doc = "Checks if the value of the field is `PhX`" ] # [ inline ( always ) ] pub fn is_ph_x ( & self ) -> bool { * self == Exti3R :: PhX } } # [ doc = "Possible values of the field `EXTI2`" ] pub type Exti2R = Exti3R ; # [ doc = "Possible values of the field `EXTI1`" ] pub type Exti1R = Exti3R ; # [ doc = "Possible values of the field `EXTI0`" ] pub type Exti0R = Exti3R ; # [ doc = "Values that can be written to the field `EXTI3`" ] pub enum Exti3W { # [ doc = "0000: PA[x] pin" ] PaX , # [ doc = "0001: PB[x] pin" ] PbX , # [ doc = "0010: PC[x] pin" ] PcX , # [ doc = "0011: PD[x] pin" ] PdX , # [ doc = "0100: PE[x] pin" ] PeX , # [ doc = "0111: PH[x] pin" ] PhX } impl Exti3W { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { Exti3W :: PaX => 0 , Exti3W :: PbX => 1 , Exti3W :: PcX => 2 , Exti3W :: PdX => 3 , Exti3W :: PeX => 4 , Exti3W :: PhX => 7 } } } # [ doc = r" Proxy" ] pub struct _Exti3W < 'a > { w : & 'a mut W , } impl < 'a > _Exti3W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti3W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI2`" ] pub type Exti2W = Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti2W < 'a > { w : & 'a mut W , } impl < 'a > _Exti2W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti2W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI1`" ] pub type Exti1W = Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti1W < 'a > { w : & 'a mut W , } impl < 'a > _Exti1W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti1W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI0`" ] pub type Exti0W = Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti0W < 'a > { w : & 'a mut W , } impl < 'a > _Exti0W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti0W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti3 ( & self ) -> Exti3R { Exti3R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti2 ( & self ) -> Exti2R { Exti2R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti1 ( & self ) -> Exti1R { Exti1R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti0 ( & self ) -> Exti0R { Exti0R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti3 ( & mut self ) -> _Exti3W { _Exti3W { w : self } } # [ doc = "Bits 8:11 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti2 ( & mut self ) -> _Exti2W { _Exti2W { w : self } } # [ doc = "Bits 4:7 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti1 ( & mut self ) -> _Exti1W { _Exti1W { w : self } } # [ doc = "Bits 0:3 - EXTI x configuration (x = 0 to 3)" ] # [ inline ( always ) ] pub fn exti0 ( & mut self ) -> _Exti0W { _Exti0W { w : self } } } } # [ doc = "external interrupt configuration register 2" ] pub struct Exticr2 { register : VolatileCell < u32 > } # [ doc = "external interrupt configuration register 2" ] pub mod exticr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Exticr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `EXTI7`" ] pub type Exti7R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI6`" ] pub type Exti6R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI5`" ] pub type Exti5R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI4`" ] pub type Exti4R = super :: exticr1 :: Exti3R ; # [ doc = "Values that can be written to the field `EXTI7`" ] pub type Exti7W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti7W < 'a > { w : & 'a mut W , } impl < 'a > _Exti7W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti7W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI6`" ] pub type Exti6W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti6W < 'a > { w : & 'a mut W , } impl < 'a > _Exti6W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti6W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI5`" ] pub type Exti5W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti5W < 'a > { w : & 'a mut W , } impl < 'a > _Exti5W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti5W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI4`" ] pub type Exti4W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti4W < 'a > { w : & 'a mut W , } impl < 'a > _Exti4W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti4W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti7 ( & self ) -> Exti7R { Exti7R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti6 ( & self ) -> Exti6R { Exti6R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti5 ( & self ) -> Exti5R { Exti5R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti4 ( & self ) -> Exti4R { Exti4R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti7 ( & mut self ) -> _Exti7W { _Exti7W { w : self } } # [ doc = "Bits 8:11 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti6 ( & mut self ) -> _Exti6W { _Exti6W { w : self } } # [ doc = "Bits 4:7 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti5 ( & mut self ) -> _Exti5W { _Exti5W { w : self } } # [ doc = "Bits 0:3 - EXTI x configuration (x = 4 to 7)" ] # [ inline ( always ) ] pub fn exti4 ( & mut self ) -> _Exti4W { _Exti4W { w : self } } } } # [ doc = "external interrupt configuration register 3" ] pub struct Exticr3 { register : VolatileCell < u32 > } # [ doc = "external interrupt configuration register 3" ] pub mod exticr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Exticr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `EXTI11`" ] pub type Exti11R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI10`" ] pub type Exti10R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI9`" ] pub type Exti9R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI8`" ] pub type Exti8R = super :: exticr1 :: Exti3R ; # [ doc = "Values that can be written to the field `EXTI11`" ] pub type Exti11W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti11W < 'a > { w : & 'a mut W , } impl < 'a > _Exti11W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti11W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI10`" ] pub type Exti10W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti10W < 'a > { w : & 'a mut W , } impl < 'a > _Exti10W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti10W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI9`" ] pub type Exti9W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti9W < 'a > { w : & 'a mut W , } impl < 'a > _Exti9W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti9W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI8`" ] pub type Exti8W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti8W < 'a > { w : & 'a mut W , } impl < 'a > _Exti8W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti8W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti11 ( & self ) -> Exti11R { Exti11R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - EXTI10" ] # [ inline ( always ) ] pub fn exti10 ( & self ) -> Exti10R { Exti10R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti9 ( & self ) -> Exti9R { Exti9R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti8 ( & self ) -> Exti8R { Exti8R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti11 ( & mut self ) -> _Exti11W { _Exti11W { w : self } } # [ doc = "Bits 8:11 - EXTI10" ] # [ inline ( always ) ] pub fn exti10 ( & mut self ) -> _Exti10W { _Exti10W { w : self } } # [ doc = "Bits 4:7 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti9 ( & mut self ) -> _Exti9W { _Exti9W { w : self } } # [ doc = "Bits 0:3 - EXTI x configuration (x = 8 to 11)" ] # [ inline ( always ) ] pub fn exti8 ( & mut self ) -> _Exti8W { _Exti8W { w : self } } } } # [ doc = "external interrupt configuration register 4" ] pub struct Exticr4 { register : VolatileCell < u32 > } # [ doc = "external interrupt configuration register 4" ] pub mod exticr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Exticr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `EXTI15`" ] pub type Exti15R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI14`" ] pub type Exti14R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI13`" ] pub type Exti13R = super :: exticr1 :: Exti3R ; # [ doc = "Possible values of the field `EXTI12`" ] pub type Exti12R = super :: exticr1 :: Exti3R ; # [ doc = "Values that can be written to the field `EXTI15`" ] pub type Exti15W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti15W < 'a > { w : & 'a mut W , } impl < 'a > _Exti15W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti15W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI14`" ] pub type Exti14W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti14W < 'a > { w : & 'a mut W , } impl < 'a > _Exti14W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti14W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI13`" ] pub type Exti13W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti13W < 'a > { w : & 'a mut W , } impl < 'a > _Exti13W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti13W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `EXTI12`" ] pub type Exti12W = super :: exticr1 :: Exti3W ; # [ doc = r" Proxy" ] pub struct _Exti12W < 'a > { w : & 'a mut W , } impl < 'a > _Exti12W < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : Exti12W ) -> & 'a mut W { unsafe { self . bits ( variant . _bits ( ) ) } } # [ doc = "0000: PA[x] pin" ] # [ inline ( always ) ] pub fn pa_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PaX ) } # [ doc = "0001: PB[x] pin" ] # [ inline ( always ) ] pub fn pb_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PbX ) } # [ doc = "0010: PC[x] pin" ] # [ inline ( always ) ] pub fn pc_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PcX ) } # [ doc = "0011: PD[x] pin" ] # [ inline ( always ) ] pub fn pd_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PdX ) } # [ doc = "0100: PE[x] pin" ] # [ inline ( always ) ] pub fn pe_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PeX ) } # [ doc = "0111: PH[x] pin" ] # [ inline ( always ) ] pub fn ph_x ( self ) -> & 'a mut W { self . variant ( super :: exticr1 :: Exti3W :: PhX ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti15 ( & self ) -> Exti15R { Exti15R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 8:11 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti14 ( & self ) -> Exti14R { Exti14R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 4:7 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti13 ( & self ) -> Exti13R { Exti13R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bits 0:3 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti12 ( & self ) -> Exti12R { Exti12R :: _from ( { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti15 ( & mut self ) -> _Exti15W { _Exti15W { w : self } } # [ doc = "Bits 8:11 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti14 ( & mut self ) -> _Exti14W { _Exti14W { w : self } } # [ doc = "Bits 4:7 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti13 ( & mut self ) -> _Exti13W { _Exti13W { w : self } } # [ doc = "Bits 0:3 - EXTI x configuration (x = 12 to 15)" ] # [ inline ( always ) ] pub fn exti12 ( & mut self ) -> _Exti12W { _Exti12W { w : self } } } } # [ doc = "Compensation cell control register" ] pub struct Cmpcr { register : VolatileCell < u32 > } # [ doc = "Compensation cell control register" ] pub mod cmpcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Cmpcr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = "Possible values of the field `READY`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum ReadyR { # [ doc = "0: I/O compensation cell not ready" ] IoCompensationCellNotReady , # [ doc = "1: O compensation cell ready" ] OCompensationCellReady } impl ReadyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { ReadyR :: IoCompensationCellNotReady => 0 , ReadyR :: OCompensationCellReady => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> ReadyR { match bits { 0 => ReadyR :: IoCompensationCellNotReady , 1 => ReadyR :: OCompensationCellReady , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `IoCompensationCellNotReady`" ] # [ inline ( always ) ] pub fn is_io_compensation_cell_not_ready ( & self ) -> bool { * self == ReadyR :: IoCompensationCellNotReady } # [ doc = "Checks if the value of the field is `OCompensationCellReady`" ] # [ inline ( always ) ] pub fn is_o_compensation_cell_ready ( & self ) -> bool { * self == ReadyR :: OCompensationCellReady } } # [ doc = "Possible values of the field `CMP_PD`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum CmpPdR { # [ doc = "0: I/O compensation cell power-down mode" ] IoCompensationCellPowerDownMode , # [ doc = "1: I/O compensation cell enabled" ] IoCompensationCellEnabled } impl CmpPdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { CmpPdR :: IoCompensationCellPowerDownMode => 0 , CmpPdR :: IoCompensationCellEnabled => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> CmpPdR { match bits { 0 => CmpPdR :: IoCompensationCellPowerDownMode , 1 => CmpPdR :: IoCompensationCellEnabled , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `IoCompensationCellPowerDownMode`" ] # [ inline ( always ) ] pub fn is_io_compensation_cell_power_down_mode ( & self ) -> bool { * self == CmpPdR :: IoCompensationCellPowerDownMode } # [ doc = "Checks if the value of the field is `IoCompensationCellEnabled`" ] # [ inline ( always ) ] pub fn is_io_compensation_cell_enabled ( & self ) -> bool { * self == CmpPdR :: IoCompensationCellEnabled } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 8 - READY" ] # [ inline ( always ) ] pub fn ready ( & self ) -> ReadyR { ReadyR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 0 - Compensation cell power-down" ] # [ inline ( always ) ] pub fn cmp_pd ( & self ) -> CmpPdR { CmpPdR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } } } # [ doc = "System configuration controller" ] pub struct Syscfg { register_block : syscfg :: RegisterBlock } impl Deref for Syscfg { type Target = syscfg :: RegisterBlock ; fn deref ( & self ) -> & syscfg :: RegisterBlock { & self . register_block } } # [ doc = "Serial peripheral interface" ] pub const SPI1 : Peripheral < Spi1 > = unsafe { Peripheral :: new ( 1073819648 ) } ; # [ doc = "Serial peripheral interface" ] pub mod spi1 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - status register" ] pub sr : Sr , # [ doc = "0x0c - data register" ] pub dr : Dr , # [ doc = "0x10 - CRC polynomial register" ] pub crcpr : Crcpr , # [ doc = "0x14 - RX CRC register" ] pub rxcrcr : Rxcrcr , # [ doc = "0x18 - TX CRC register" ] pub txcrcr : Txcrcr , # [ doc = "0x1c - I2S configuration register" ] pub i2scfgr : I2scfgr , # [ doc = "0x20 - I2S prescaler register" ] pub i2spr : I2spr , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BidimodeR { bits : u8 , } impl BidimodeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BidioeR { bits : u8 , } impl BidioeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrcenR { bits : u8 , } impl CrcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrcnextR { bits : u8 , } impl CrcnextR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DffR { bits : u8 , } impl DffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxonlyR { bits : u8 , } impl RxonlyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SsmR { bits : u8 , } impl SsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SsiR { bits : u8 , } impl SsiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsbfirstR { bits : u8 , } impl LsbfirstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SpeR { bits : u8 , } impl SpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BrR { bits : u8 , } impl BrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MstrR { bits : u8 , } impl MstrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CpolR { bits : u8 , } impl CpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CphaR { bits : u8 , } impl CphaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _BidimodeW < 'a > { w : & 'a mut W , } impl < 'a > _BidimodeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BidioeW < 'a > { w : & 'a mut W , } impl < 'a > _BidioeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrcenW < 'a > { w : & 'a mut W , } impl < 'a > _CrcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrcnextW < 'a > { w : & 'a mut W , } impl < 'a > _CrcnextW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DffW < 'a > { w : & 'a mut W , } impl < 'a > _DffW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxonlyW < 'a > { w : & 'a mut W , } impl < 'a > _RxonlyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SsmW < 'a > { w : & 'a mut W , } impl < 'a > _SsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SsiW < 'a > { w : & 'a mut W , } impl < 'a > _SsiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsbfirstW < 'a > { w : & 'a mut W , } impl < 'a > _LsbfirstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SpeW < 'a > { w : & 'a mut W , } impl < 'a > _SpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BrW < 'a > { w : & 'a mut W , } impl < 'a > _BrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MstrW < 'a > { w : & 'a mut W , } impl < 'a > _MstrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CpolW < 'a > { w : & 'a mut W , } impl < 'a > _CpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CphaW < 'a > { w : & 'a mut W , } impl < 'a > _CphaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Bidirectional data mode enable" ] # [ inline ( always ) ] pub fn bidimode ( & self ) -> BidimodeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BidimodeR { bits } } # [ doc = "Bit 14 - Output enable in bidirectional mode" ] # [ inline ( always ) ] pub fn bidioe ( & self ) -> BidioeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BidioeR { bits } } # [ doc = "Bit 13 - Hardware CRC calculation enable" ] # [ inline ( always ) ] pub fn crcen ( & self ) -> CrcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrcenR { bits } } # [ doc = "Bit 12 - CRC transfer next" ] # [ inline ( always ) ] pub fn crcnext ( & self ) -> CrcnextR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrcnextR { bits } } # [ doc = "Bit 11 - Data frame format" ] # [ inline ( always ) ] pub fn dff ( & self ) -> DffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DffR { bits } } # [ doc = "Bit 10 - Receive only" ] # [ inline ( always ) ] pub fn rxonly ( & self ) -> RxonlyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxonlyR { bits } } # [ doc = "Bit 9 - Software slave management" ] # [ inline ( always ) ] pub fn ssm ( & self ) -> SsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SsmR { bits } } # [ doc = "Bit 8 - Internal slave select" ] # [ inline ( always ) ] pub fn ssi ( & self ) -> SsiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SsiR { bits } } # [ doc = "Bit 7 - Frame format" ] # [ inline ( always ) ] pub fn lsbfirst ( & self ) -> LsbfirstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsbfirstR { bits } } # [ doc = "Bit 6 - SPI enable" ] # [ inline ( always ) ] pub fn spe ( & self ) -> SpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SpeR { bits } } # [ doc = "Bits 3:5 - Baud rate control" ] # [ inline ( always ) ] pub fn br ( & self ) -> BrR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BrR { bits } } # [ doc = "Bit 2 - Master selection" ] # [ inline ( always ) ] pub fn mstr ( & self ) -> MstrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MstrR { bits } } # [ doc = "Bit 1 - Clock polarity" ] # [ inline ( always ) ] pub fn cpol ( & self ) -> CpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CpolR { bits } } # [ doc = "Bit 0 - Clock phase" ] # [ inline ( always ) ] pub fn cpha ( & self ) -> CphaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CphaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Bidirectional data mode enable" ] # [ inline ( always ) ] pub fn bidimode ( & mut self ) -> _BidimodeW { _BidimodeW { w : self } } # [ doc = "Bit 14 - Output enable in bidirectional mode" ] # [ inline ( always ) ] pub fn bidioe ( & mut self ) -> _BidioeW { _BidioeW { w : self } } # [ doc = "Bit 13 - Hardware CRC calculation enable" ] # [ inline ( always ) ] pub fn crcen ( & mut self ) -> _CrcenW { _CrcenW { w : self } } # [ doc = "Bit 12 - CRC transfer next" ] # [ inline ( always ) ] pub fn crcnext ( & mut self ) -> _CrcnextW { _CrcnextW { w : self } } # [ doc = "Bit 11 - Data frame format" ] # [ inline ( always ) ] pub fn dff ( & mut self ) -> _DffW { _DffW { w : self } } # [ doc = "Bit 10 - Receive only" ] # [ inline ( always ) ] pub fn rxonly ( & mut self ) -> _RxonlyW { _RxonlyW { w : self } } # [ doc = "Bit 9 - Software slave management" ] # [ inline ( always ) ] pub fn ssm ( & mut self ) -> _SsmW { _SsmW { w : self } } # [ doc = "Bit 8 - Internal slave select" ] # [ inline ( always ) ] pub fn ssi ( & mut self ) -> _SsiW { _SsiW { w : self } } # [ doc = "Bit 7 - Frame format" ] # [ inline ( always ) ] pub fn lsbfirst ( & mut self ) -> _LsbfirstW { _LsbfirstW { w : self } } # [ doc = "Bit 6 - SPI enable" ] # [ inline ( always ) ] pub fn spe ( & mut self ) -> _SpeW { _SpeW { w : self } } # [ doc = "Bits 3:5 - Baud rate control" ] # [ inline ( always ) ] pub fn br ( & mut self ) -> _BrW { _BrW { w : self } } # [ doc = "Bit 2 - Master selection" ] # [ inline ( always ) ] pub fn mstr ( & mut self ) -> _MstrW { _MstrW { w : self } } # [ doc = "Bit 1 - Clock polarity" ] # [ inline ( always ) ] pub fn cpol ( & mut self ) -> _CpolW { _CpolW { w : self } } # [ doc = "Bit 0 - Clock phase" ] # [ inline ( always ) ] pub fn cpha ( & mut self ) -> _CphaW { _CphaW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TxeieR { bits : u8 , } impl TxeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxneieR { bits : u8 , } impl RxneieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrieR { bits : u8 , } impl ErrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrfR { bits : u8 , } impl FrfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SsoeR { bits : u8 , } impl SsoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxdmaenR { bits : u8 , } impl TxdmaenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdmaenR { bits : u8 , } impl RxdmaenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TxeieW < 'a > { w : & 'a mut W , } impl < 'a > _TxeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxneieW < 'a > { w : & 'a mut W , } impl < 'a > _RxneieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErrieW < 'a > { w : & 'a mut W , } impl < 'a > _ErrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrfW < 'a > { w : & 'a mut W , } impl < 'a > _FrfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SsoeW < 'a > { w : & 'a mut W , } impl < 'a > _SsoeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxdmaenW < 'a > { w : & 'a mut W , } impl < 'a > _TxdmaenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdmaenW < 'a > { w : & 'a mut W , } impl < 'a > _RxdmaenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Tx buffer empty interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & self ) -> TxeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxeieR { bits } } # [ doc = "Bit 6 - RX buffer not empty interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & self ) -> RxneieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxneieR { bits } } # [ doc = "Bit 5 - Error interrupt enable" ] # [ inline ( always ) ] pub fn errie ( & self ) -> ErrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrieR { bits } } # [ doc = "Bit 4 - Frame format" ] # [ inline ( always ) ] pub fn frf ( & self ) -> FrfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrfR { bits } } # [ doc = "Bit 2 - SS output enable" ] # [ inline ( always ) ] pub fn ssoe ( & self ) -> SsoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SsoeR { bits } } # [ doc = "Bit 1 - Tx buffer DMA enable" ] # [ inline ( always ) ] pub fn txdmaen ( & self ) -> TxdmaenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxdmaenR { bits } } # [ doc = "Bit 0 - Rx buffer DMA enable" ] # [ inline ( always ) ] pub fn rxdmaen ( & self ) -> RxdmaenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdmaenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Tx buffer empty interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & mut self ) -> _TxeieW { _TxeieW { w : self } } # [ doc = "Bit 6 - RX buffer not empty interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & mut self ) -> _RxneieW { _RxneieW { w : self } } # [ doc = "Bit 5 - Error interrupt enable" ] # [ inline ( always ) ] pub fn errie ( & mut self ) -> _ErrieW { _ErrieW { w : self } } # [ doc = "Bit 4 - Frame format" ] # [ inline ( always ) ] pub fn frf ( & mut self ) -> _FrfW { _FrfW { w : self } } # [ doc = "Bit 2 - SS output enable" ] # [ inline ( always ) ] pub fn ssoe ( & mut self ) -> _SsoeW { _SsoeW { w : self } } # [ doc = "Bit 1 - Tx buffer DMA enable" ] # [ inline ( always ) ] pub fn txdmaen ( & mut self ) -> _TxdmaenW { _TxdmaenW { w : self } } # [ doc = "Bit 0 - Rx buffer DMA enable" ] # [ inline ( always ) ] pub fn rxdmaen ( & mut self ) -> _RxdmaenW { _RxdmaenW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TifrfeR { bits : u8 , } impl TifrfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BsyR { bits : u8 , } impl BsyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OvrR { bits : u8 , } impl OvrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ModfR { bits : u8 , } impl ModfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrcerrR { bits : u8 , } impl CrcerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdrR { bits : u8 , } impl UdrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChsideR { bits : u8 , } impl ChsideR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxeR { bits : u8 , } impl TxeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxneR { bits : u8 , } impl RxneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CrcerrW < 'a > { w : & 'a mut W , } impl < 'a > _CrcerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 8 - TI frame format error" ] # [ inline ( always ) ] pub fn tifrfe ( & self ) -> TifrfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifrfeR { bits } } # [ doc = "Bit 7 - Busy flag" ] # [ inline ( always ) ] pub fn bsy ( & self ) -> BsyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BsyR { bits } } # [ doc = "Bit 6 - Overrun flag" ] # [ inline ( always ) ] pub fn ovr ( & self ) -> OvrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrR { bits } } # [ doc = "Bit 5 - Mode fault" ] # [ inline ( always ) ] pub fn modf ( & self ) -> ModfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ModfR { bits } } # [ doc = "Bit 4 - CRC error flag" ] # [ inline ( always ) ] pub fn crcerr ( & self ) -> CrcerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrcerrR { bits } } # [ doc = "Bit 3 - Underrun flag" ] # [ inline ( always ) ] pub fn udr ( & self ) -> UdrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdrR { bits } } # [ doc = "Bit 2 - Channel side" ] # [ inline ( always ) ] pub fn chside ( & self ) -> ChsideR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChsideR { bits } } # [ doc = "Bit 1 - Transmit buffer empty" ] # [ inline ( always ) ] pub fn txe ( & self ) -> TxeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxeR { bits } } # [ doc = "Bit 0 - Receive buffer not empty" ] # [ inline ( always ) ] pub fn rxne ( & self ) -> RxneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxneR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 4 - CRC error flag" ] # [ inline ( always ) ] pub fn crcerr ( & mut self ) -> _CrcerrW { _CrcerrW { w : self } } } } # [ doc = "data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DrR { bits : u16 , } impl DrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DrW < 'a > { w : & 'a mut W , } impl < 'a > _DrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Data register" ] # [ inline ( always ) ] pub fn dr ( & self ) -> DrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Data register" ] # [ inline ( always ) ] pub fn dr ( & mut self ) -> _DrW { _DrW { w : self } } } } # [ doc = "CRC polynomial register" ] pub struct Crcpr { register : VolatileCell < u32 > } # [ doc = "CRC polynomial register" ] pub mod crcpr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Crcpr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CrcpolyR { bits : u16 , } impl CrcpolyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CrcpolyW < 'a > { w : & 'a mut W , } impl < 'a > _CrcpolyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - CRC polynomial register" ] # [ inline ( always ) ] pub fn crcpoly ( & self ) -> CrcpolyR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CrcpolyR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 7 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - CRC polynomial register" ] # [ inline ( always ) ] pub fn crcpoly ( & mut self ) -> _CrcpolyW { _CrcpolyW { w : self } } } } # [ doc = "RX CRC register" ] pub struct Rxcrcr { register : VolatileCell < u32 > } # [ doc = "RX CRC register" ] pub mod rxcrcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rxcrcr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RxCrcR { bits : u16 , } impl RxCrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Rx CRC register" ] # [ inline ( always ) ] pub fn rx_crc ( & self ) -> RxCrcR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RxCrcR { bits } } } } # [ doc = "TX CRC register" ] pub struct Txcrcr { register : VolatileCell < u32 > } # [ doc = "TX CRC register" ] pub mod txcrcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Txcrcr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TxCrcR { bits : u16 , } impl TxCrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Tx CRC register" ] # [ inline ( always ) ] pub fn tx_crc ( & self ) -> TxCrcR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TxCrcR { bits } } } } # [ doc = "I2S configuration register" ] pub struct I2scfgr { register : VolatileCell < u32 > } # [ doc = "I2S configuration register" ] pub mod i2scfgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: I2scfgr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct I2smodR { bits : u8 , } impl I2smodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2seR { bits : u8 , } impl I2seR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2scfgR { bits : u8 , } impl I2scfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PcmsyncR { bits : u8 , } impl PcmsyncR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2sstdR { bits : u8 , } impl I2sstdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CkpolR { bits : u8 , } impl CkpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatlenR { bits : u8 , } impl DatlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChlenR { bits : u8 , } impl ChlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _I2smodW < 'a > { w : & 'a mut W , } impl < 'a > _I2smodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2seW < 'a > { w : & 'a mut W , } impl < 'a > _I2seW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2scfgW < 'a > { w : & 'a mut W , } impl < 'a > _I2scfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PcmsyncW < 'a > { w : & 'a mut W , } impl < 'a > _PcmsyncW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2sstdW < 'a > { w : & 'a mut W , } impl < 'a > _I2sstdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CkpolW < 'a > { w : & 'a mut W , } impl < 'a > _CkpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatlenW < 'a > { w : & 'a mut W , } impl < 'a > _DatlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChlenW < 'a > { w : & 'a mut W , } impl < 'a > _ChlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 11 - I2S mode selection" ] # [ inline ( always ) ] pub fn i2smod ( & self ) -> I2smodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2smodR { bits } } # [ doc = "Bit 10 - I2S Enable" ] # [ inline ( always ) ] pub fn i2se ( & self ) -> I2seR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2seR { bits } } # [ doc = "Bits 8:9 - I2S configuration mode" ] # [ inline ( always ) ] pub fn i2scfg ( & self ) -> I2scfgR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2scfgR { bits } } # [ doc = "Bit 7 - PCM frame synchronization" ] # [ inline ( always ) ] pub fn pcmsync ( & self ) -> PcmsyncR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcmsyncR { bits } } # [ doc = "Bits 4:5 - I2S standard selection" ] # [ inline ( always ) ] pub fn i2sstd ( & self ) -> I2sstdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2sstdR { bits } } # [ doc = "Bit 3 - Steady state clock polarity" ] # [ inline ( always ) ] pub fn ckpol ( & self ) -> CkpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkpolR { bits } } # [ doc = "Bits 1:2 - Data length to be transferred" ] # [ inline ( always ) ] pub fn datlen ( & self ) -> DatlenR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatlenR { bits } } # [ doc = "Bit 0 - Channel length (number of bits per audio channel)" ] # [ inline ( always ) ] pub fn chlen ( & self ) -> ChlenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChlenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 11 - I2S mode selection" ] # [ inline ( always ) ] pub fn i2smod ( & mut self ) -> _I2smodW { _I2smodW { w : self } } # [ doc = "Bit 10 - I2S Enable" ] # [ inline ( always ) ] pub fn i2se ( & mut self ) -> _I2seW { _I2seW { w : self } } # [ doc = "Bits 8:9 - I2S configuration mode" ] # [ inline ( always ) ] pub fn i2scfg ( & mut self ) -> _I2scfgW { _I2scfgW { w : self } } # [ doc = "Bit 7 - PCM frame synchronization" ] # [ inline ( always ) ] pub fn pcmsync ( & mut self ) -> _PcmsyncW { _PcmsyncW { w : self } } # [ doc = "Bits 4:5 - I2S standard selection" ] # [ inline ( always ) ] pub fn i2sstd ( & mut self ) -> _I2sstdW { _I2sstdW { w : self } } # [ doc = "Bit 3 - Steady state clock polarity" ] # [ inline ( always ) ] pub fn ckpol ( & mut self ) -> _CkpolW { _CkpolW { w : self } } # [ doc = "Bits 1:2 - Data length to be transferred" ] # [ inline ( always ) ] pub fn datlen ( & mut self ) -> _DatlenW { _DatlenW { w : self } } # [ doc = "Bit 0 - Channel length (number of bits per audio channel)" ] # [ inline ( always ) ] pub fn chlen ( & mut self ) -> _ChlenW { _ChlenW { w : self } } } } # [ doc = "I2S prescaler register" ] pub struct I2spr { register : VolatileCell < u32 > } # [ doc = "I2S prescaler register" ] pub mod i2spr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: I2spr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MckoeR { bits : u8 , } impl MckoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddR { bits : u8 , } impl OddR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2sdivR { bits : u8 , } impl I2sdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MckoeW < 'a > { w : & 'a mut W , } impl < 'a > _MckoeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddW < 'a > { w : & 'a mut W , } impl < 'a > _OddW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2sdivW < 'a > { w : & 'a mut W , } impl < 'a > _I2sdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - Master clock output enable" ] # [ inline ( always ) ] pub fn mckoe ( & self ) -> MckoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MckoeR { bits } } # [ doc = "Bit 8 - Odd factor for the prescaler" ] # [ inline ( always ) ] pub fn odd ( & self ) -> OddR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddR { bits } } # [ doc = "Bits 0:7 - I2S Linear prescaler" ] # [ inline ( always ) ] pub fn i2sdiv ( & self ) -> I2sdivR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2sdivR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 10 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - Master clock output enable" ] # [ inline ( always ) ] pub fn mckoe ( & mut self ) -> _MckoeW { _MckoeW { w : self } } # [ doc = "Bit 8 - Odd factor for the prescaler" ] # [ inline ( always ) ] pub fn odd ( & mut self ) -> _OddW { _OddW { w : self } } # [ doc = "Bits 0:7 - I2S Linear prescaler" ] # [ inline ( always ) ] pub fn i2sdiv ( & mut self ) -> _I2sdivW { _I2sdivW { w : self } } } } } # [ doc = "Serial peripheral interface" ] pub struct Spi1 { register_block : spi1 :: RegisterBlock } impl Deref for Spi1 { type Target = spi1 :: RegisterBlock ; fn deref ( & self ) -> & spi1 :: RegisterBlock { & self . register_block } } # [ doc = "SPI2" ] pub const SPI2 : Peripheral < Spi2 > = unsafe { Peripheral :: new ( 1073756160 ) } ; # [ doc = r" Register block" ] pub struct Spi2 { register_block : spi1 :: RegisterBlock } impl Deref for Spi2 { type Target = spi1 :: RegisterBlock ; fn deref ( & self ) -> & spi1 :: RegisterBlock { & self . register_block } } # [ doc = "SPI3" ] pub const SPI3 : Peripheral < Spi3 > = unsafe { Peripheral :: new ( 1073757184 ) } ; # [ doc = r" Register block" ] pub struct Spi3 { register_block : spi1 :: RegisterBlock } impl Deref for Spi3 { type Target = spi1 :: RegisterBlock ; fn deref ( & self ) -> & spi1 :: RegisterBlock { & self . register_block } } # [ doc = "I2S2ext" ] pub const I2S2EXT : Peripheral < I2s2ext > = unsafe { Peripheral :: new ( 1073755136 ) } ; # [ doc = r" Register block" ] pub struct I2s2ext { register_block : spi1 :: RegisterBlock } impl Deref for I2s2ext { type Target = spi1 :: RegisterBlock ; fn deref ( & self ) -> & spi1 :: RegisterBlock { & self . register_block } } # [ doc = "I2S3ext" ] pub const I2S3EXT : Peripheral < I2s3ext > = unsafe { Peripheral :: new ( 1073758208 ) } ; # [ doc = r" Register block" ] pub struct I2s3ext { register_block : spi1 :: RegisterBlock } impl Deref for I2s3ext { type Target = spi1 :: RegisterBlock ; fn deref ( & self ) -> & spi1 :: RegisterBlock { & self . register_block } } # [ doc = "Secure digital input/output interface" ] pub const SDIO : Peripheral < Sdio > = unsafe { Peripheral :: new ( 1073818624 ) } ; # [ doc = "Secure digital input/output interface" ] pub mod sdio { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - power control register" ] pub power : Power , # [ doc = "0x04 - SDI clock control register" ] pub clkcr : Clkcr , # [ doc = "0x08 - argument register" ] pub arg : Arg , # [ doc = "0x0c - command register" ] pub cmd : Cmd , # [ doc = "0x10 - command response register" ] pub respcmd : Respcmd , # [ doc = "0x14 - response 1..4 register" ] pub resp1 : Resp1 , # [ doc = "0x18 - response 1..4 register" ] pub resp2 : Resp2 , # [ doc = "0x1c - response 1..4 register" ] pub resp3 : Resp3 , # [ doc = "0x20 - response 1..4 register" ] pub resp4 : Resp4 , # [ doc = "0x24 - data timer register" ] pub dtimer : Dtimer , # [ doc = "0x28 - data length register" ] pub dlen : Dlen , # [ doc = "0x2c - data control register" ] pub dctrl : Dctrl , # [ doc = "0x30 - data counter register" ] pub dcount : Dcount , # [ doc = "0x34 - status register" ] pub sta : Sta , # [ doc = "0x38 - interrupt clear register" ] pub icr : Icr , # [ doc = "0x3c - mask register" ] pub mask : Mask , _reserved0 : [ u8 ; 8usize ] , # [ doc = "0x48 - FIFO counter register" ] pub fifocnt : Fifocnt , _reserved1 : [ u8 ; 52usize ] , # [ doc = "0x80 - data FIFO register" ] pub fifo : Fifo , } # [ doc = "power control register" ] pub struct Power { register : VolatileCell < u32 > } # [ doc = "power control register" ] pub mod power { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Power { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PwrctrlR { bits : u8 , } impl PwrctrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PwrctrlW < 'a > { w : & 'a mut W , } impl < 'a > _PwrctrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - PWRCTRL" ] # [ inline ( always ) ] pub fn pwrctrl ( & self ) -> PwrctrlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrctrlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - PWRCTRL" ] # [ inline ( always ) ] pub fn pwrctrl ( & mut self ) -> _PwrctrlW { _PwrctrlW { w : self } } } } # [ doc = "SDI clock control register" ] pub struct Clkcr { register : VolatileCell < u32 > } # [ doc = "SDI clock control register" ] pub mod clkcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Clkcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HwfcEnR { bits : u8 , } impl HwfcEnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NegedgeR { bits : u8 , } impl NegedgeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WidbusR { bits : u8 , } impl WidbusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BypassR { bits : u8 , } impl BypassR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwrsavR { bits : u8 , } impl PwrsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkenR { bits : u8 , } impl ClkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkdivR { bits : u8 , } impl ClkdivR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _HwfcEnW < 'a > { w : & 'a mut W , } impl < 'a > _HwfcEnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NegedgeW < 'a > { w : & 'a mut W , } impl < 'a > _NegedgeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WidbusW < 'a > { w : & 'a mut W , } impl < 'a > _WidbusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BypassW < 'a > { w : & 'a mut W , } impl < 'a > _BypassW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwrsavW < 'a > { w : & 'a mut W , } impl < 'a > _PwrsavW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkenW < 'a > { w : & 'a mut W , } impl < 'a > _ClkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkdivW < 'a > { w : & 'a mut W , } impl < 'a > _ClkdivW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - HW Flow Control enable" ] # [ inline ( always ) ] pub fn hwfc_en ( & self ) -> HwfcEnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HwfcEnR { bits } } # [ doc = "Bit 13 - SDIO_CK dephasing selection bit" ] # [ inline ( always ) ] pub fn negedge ( & self ) -> NegedgeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NegedgeR { bits } } # [ doc = "Bits 11:12 - Wide bus mode enable bit" ] # [ inline ( always ) ] pub fn widbus ( & self ) -> WidbusR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WidbusR { bits } } # [ doc = "Bit 10 - Clock divider bypass enable bit" ] # [ inline ( always ) ] pub fn bypass ( & self ) -> BypassR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BypassR { bits } } # [ doc = "Bit 9 - Power saving configuration bit" ] # [ inline ( always ) ] pub fn pwrsav ( & self ) -> PwrsavR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrsavR { bits } } # [ doc = "Bit 8 - Clock enable bit" ] # [ inline ( always ) ] pub fn clken ( & self ) -> ClkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkenR { bits } } # [ doc = "Bits 0:7 - Clock divide factor" ] # [ inline ( always ) ] pub fn clkdiv ( & self ) -> ClkdivR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkdivR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - HW Flow Control enable" ] # [ inline ( always ) ] pub fn hwfc_en ( & mut self ) -> _HwfcEnW { _HwfcEnW { w : self } } # [ doc = "Bit 13 - SDIO_CK dephasing selection bit" ] # [ inline ( always ) ] pub fn negedge ( & mut self ) -> _NegedgeW { _NegedgeW { w : self } } # [ doc = "Bits 11:12 - Wide bus mode enable bit" ] # [ inline ( always ) ] pub fn widbus ( & mut self ) -> _WidbusW { _WidbusW { w : self } } # [ doc = "Bit 10 - Clock divider bypass enable bit" ] # [ inline ( always ) ] pub fn bypass ( & mut self ) -> _BypassW { _BypassW { w : self } } # [ doc = "Bit 9 - Power saving configuration bit" ] # [ inline ( always ) ] pub fn pwrsav ( & mut self ) -> _PwrsavW { _PwrsavW { w : self } } # [ doc = "Bit 8 - Clock enable bit" ] # [ inline ( always ) ] pub fn clken ( & mut self ) -> _ClkenW { _ClkenW { w : self } } # [ doc = "Bits 0:7 - Clock divide factor" ] # [ inline ( always ) ] pub fn clkdiv ( & mut self ) -> _ClkdivW { _ClkdivW { w : self } } } } # [ doc = "argument register" ] pub struct Arg { register : VolatileCell < u32 > } # [ doc = "argument register" ] pub mod arg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CmdargR { bits : u32 , } impl CmdargR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _CmdargW < 'a > { w : & 'a mut W , } impl < 'a > _CmdargW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Command argument" ] # [ inline ( always ) ] pub fn cmdarg ( & self ) -> CmdargR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; CmdargR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Command argument" ] # [ inline ( always ) ] pub fn cmdarg ( & mut self ) -> _CmdargW { _CmdargW { w : self } } } } # [ doc = "command register" ] pub struct Cmd { register : VolatileCell < u32 > } # [ doc = "command register" ] pub mod cmd { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cmd { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CeAtacmdR { bits : u8 , } impl CeAtacmdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NIenR { bits : u8 , } impl NIenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EncmdcomplR { bits : u8 , } impl EncmdcomplR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdiosuspendR { bits : u8 , } impl SdiosuspendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CpsmenR { bits : u8 , } impl CpsmenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitpendR { bits : u8 , } impl WaitpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitintR { bits : u8 , } impl WaitintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WaitrespR { bits : u8 , } impl WaitrespR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdindexR { bits : u8 , } impl CmdindexR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CeAtacmdW < 'a > { w : & 'a mut W , } impl < 'a > _CeAtacmdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NIenW < 'a > { w : & 'a mut W , } impl < 'a > _NIenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EncmdcomplW < 'a > { w : & 'a mut W , } impl < 'a > _EncmdcomplW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdiosuspendW < 'a > { w : & 'a mut W , } impl < 'a > _SdiosuspendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CpsmenW < 'a > { w : & 'a mut W , } impl < 'a > _CpsmenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitpendW < 'a > { w : & 'a mut W , } impl < 'a > _WaitpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitintW < 'a > { w : & 'a mut W , } impl < 'a > _WaitintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WaitrespW < 'a > { w : & 'a mut W , } impl < 'a > _WaitrespW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdindexW < 'a > { w : & 'a mut W , } impl < 'a > _CmdindexW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - CE-ATA command" ] # [ inline ( always ) ] pub fn ce_atacmd ( & self ) -> CeAtacmdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CeAtacmdR { bits } } # [ doc = "Bit 13 - not Interrupt Enable" ] # [ inline ( always ) ] pub fn n_ien ( & self ) -> NIenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NIenR { bits } } # [ doc = "Bit 12 - Enable CMD completion" ] # [ inline ( always ) ] pub fn encmdcompl ( & self ) -> EncmdcomplR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EncmdcomplR { bits } } # [ doc = "Bit 11 - SD I/O suspend command" ] # [ inline ( always ) ] pub fn sdiosuspend ( & self ) -> SdiosuspendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdiosuspendR { bits } } # [ doc = "Bit 10 - Command path state machine (CPSM) Enable bit" ] # [ inline ( always ) ] pub fn cpsmen ( & self ) -> CpsmenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CpsmenR { bits } } # [ doc = "Bit 9 - CPSM Waits for ends of data transfer (CmdPend internal signal)." ] # [ inline ( always ) ] pub fn waitpend ( & self ) -> WaitpendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitpendR { bits } } # [ doc = "Bit 8 - CPSM waits for interrupt request" ] # [ inline ( always ) ] pub fn waitint ( & self ) -> WaitintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitintR { bits } } # [ doc = "Bits 6:7 - Wait for response bits" ] # [ inline ( always ) ] pub fn waitresp ( & self ) -> WaitrespR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WaitrespR { bits } } # [ doc = "Bits 0:5 - Command index" ] # [ inline ( always ) ] pub fn cmdindex ( & self ) -> CmdindexR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdindexR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - CE-ATA command" ] # [ inline ( always ) ] pub fn ce_atacmd ( & mut self ) -> _CeAtacmdW { _CeAtacmdW { w : self } } # [ doc = "Bit 13 - not Interrupt Enable" ] # [ inline ( always ) ] pub fn n_ien ( & mut self ) -> _NIenW { _NIenW { w : self } } # [ doc = "Bit 12 - Enable CMD completion" ] # [ inline ( always ) ] pub fn encmdcompl ( & mut self ) -> _EncmdcomplW { _EncmdcomplW { w : self } } # [ doc = "Bit 11 - SD I/O suspend command" ] # [ inline ( always ) ] pub fn sdiosuspend ( & mut self ) -> _SdiosuspendW { _SdiosuspendW { w : self } } # [ doc = "Bit 10 - Command path state machine (CPSM) Enable bit" ] # [ inline ( always ) ] pub fn cpsmen ( & mut self ) -> _CpsmenW { _CpsmenW { w : self } } # [ doc = "Bit 9 - CPSM Waits for ends of data transfer (CmdPend internal signal)." ] # [ inline ( always ) ] pub fn waitpend ( & mut self ) -> _WaitpendW { _WaitpendW { w : self } } # [ doc = "Bit 8 - CPSM waits for interrupt request" ] # [ inline ( always ) ] pub fn waitint ( & mut self ) -> _WaitintW { _WaitintW { w : self } } # [ doc = "Bits 6:7 - Wait for response bits" ] # [ inline ( always ) ] pub fn waitresp ( & mut self ) -> _WaitrespW { _WaitrespW { w : self } } # [ doc = "Bits 0:5 - Command index" ] # [ inline ( always ) ] pub fn cmdindex ( & mut self ) -> _CmdindexW { _CmdindexW { w : self } } } } # [ doc = "command response register" ] pub struct Respcmd { register : VolatileCell < u32 > } # [ doc = "command response register" ] pub mod respcmd { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Respcmd { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RespcmdR { bits : u8 , } impl RespcmdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:5 - Response command index" ] # [ inline ( always ) ] pub fn respcmd ( & self ) -> RespcmdR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RespcmdR { bits } } } } # [ doc = "response 1..4 register" ] pub struct Resp1 { register : VolatileCell < u32 > } # [ doc = "response 1..4 register" ] pub mod resp1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Resp1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Cardstatus1R { bits : u32 , } impl Cardstatus1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - see Table 132." ] # [ inline ( always ) ] pub fn cardstatus1 ( & self ) -> Cardstatus1R { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Cardstatus1R { bits } } } } # [ doc = "response 1..4 register" ] pub struct Resp2 { register : VolatileCell < u32 > } # [ doc = "response 1..4 register" ] pub mod resp2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Resp2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Cardstatus2R { bits : u32 , } impl Cardstatus2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - see Table 132." ] # [ inline ( always ) ] pub fn cardstatus2 ( & self ) -> Cardstatus2R { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Cardstatus2R { bits } } } } # [ doc = "response 1..4 register" ] pub struct Resp3 { register : VolatileCell < u32 > } # [ doc = "response 1..4 register" ] pub mod resp3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Resp3 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Cardstatus3R { bits : u32 , } impl Cardstatus3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - see Table 132." ] # [ inline ( always ) ] pub fn cardstatus3 ( & self ) -> Cardstatus3R { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Cardstatus3R { bits } } } } # [ doc = "response 1..4 register" ] pub struct Resp4 { register : VolatileCell < u32 > } # [ doc = "response 1..4 register" ] pub mod resp4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Resp4 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Cardstatus4R { bits : u32 , } impl Cardstatus4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - see Table 132." ] # [ inline ( always ) ] pub fn cardstatus4 ( & self ) -> Cardstatus4R { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Cardstatus4R { bits } } } } # [ doc = "data timer register" ] pub struct Dtimer { register : VolatileCell < u32 > } # [ doc = "data timer register" ] pub mod dtimer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dtimer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DatatimeR { bits : u32 , } impl DatatimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DatatimeW < 'a > { w : & 'a mut W , } impl < 'a > _DatatimeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Data timeout period" ] # [ inline ( always ) ] pub fn datatime ( & self ) -> DatatimeR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DatatimeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Data timeout period" ] # [ inline ( always ) ] pub fn datatime ( & mut self ) -> _DatatimeW { _DatatimeW { w : self } } } } # [ doc = "data length register" ] pub struct Dlen { register : VolatileCell < u32 > } # [ doc = "data length register" ] pub mod dlen { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dlen { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DatalengthR { bits : u32 , } impl DatalengthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DatalengthW < 'a > { w : & 'a mut W , } impl < 'a > _DatalengthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 33554431 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:24 - Data length value" ] # [ inline ( always ) ] pub fn datalength ( & self ) -> DatalengthR { let bits = { const MASK : u32 = 33554431 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DatalengthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:24 - Data length value" ] # [ inline ( always ) ] pub fn datalength ( & mut self ) -> _DatalengthW { _DatalengthW { w : self } } } } # [ doc = "data control register" ] pub struct Dctrl { register : VolatileCell < u32 > } # [ doc = "data control register" ] pub mod dctrl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dctrl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SdioenR { bits : u8 , } impl SdioenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwmodR { bits : u8 , } impl RwmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwstopR { bits : u8 , } impl RwstopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwstartR { bits : u8 , } impl RwstartR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DblocksizeR { bits : u8 , } impl DblocksizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmaenR { bits : u8 , } impl DmaenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtmodeR { bits : u8 , } impl DtmodeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtdirR { bits : u8 , } impl DtdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtenR { bits : u8 , } impl DtenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SdioenW < 'a > { w : & 'a mut W , } impl < 'a > _SdioenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwmodW < 'a > { w : & 'a mut W , } impl < 'a > _RwmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwstopW < 'a > { w : & 'a mut W , } impl < 'a > _RwstopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwstartW < 'a > { w : & 'a mut W , } impl < 'a > _RwstartW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DblocksizeW < 'a > { w : & 'a mut W , } impl < 'a > _DblocksizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmaenW < 'a > { w : & 'a mut W , } impl < 'a > _DmaenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtmodeW < 'a > { w : & 'a mut W , } impl < 'a > _DtmodeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtdirW < 'a > { w : & 'a mut W , } impl < 'a > _DtdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtenW < 'a > { w : & 'a mut W , } impl < 'a > _DtenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 11 - SD I/O enable functions" ] # [ inline ( always ) ] pub fn sdioen ( & self ) -> SdioenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdioenR { bits } } # [ doc = "Bit 10 - Read wait mode" ] # [ inline ( always ) ] pub fn rwmod ( & self ) -> RwmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwmodR { bits } } # [ doc = "Bit 9 - Read wait stop" ] # [ inline ( always ) ] pub fn rwstop ( & self ) -> RwstopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwstopR { bits } } # [ doc = "Bit 8 - Read wait start" ] # [ inline ( always ) ] pub fn rwstart ( & self ) -> RwstartR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwstartR { bits } } # [ doc = "Bits 4:7 - Data block size" ] # [ inline ( always ) ] pub fn dblocksize ( & self ) -> DblocksizeR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DblocksizeR { bits } } # [ doc = "Bit 3 - DMA enable bit" ] # [ inline ( always ) ] pub fn dmaen ( & self ) -> DmaenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmaenR { bits } } # [ doc = "Bit 2 - Data transfer mode selection 1: Stream or SDIO multibyte data transfer." ] # [ inline ( always ) ] pub fn dtmode ( & self ) -> DtmodeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtmodeR { bits } } # [ doc = "Bit 1 - Data transfer direction selection" ] # [ inline ( always ) ] pub fn dtdir ( & self ) -> DtdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtdirR { bits } } # [ doc = "Bit 0 - DTEN" ] # [ inline ( always ) ] pub fn dten ( & self ) -> DtenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 11 - SD I/O enable functions" ] # [ inline ( always ) ] pub fn sdioen ( & mut self ) -> _SdioenW { _SdioenW { w : self } } # [ doc = "Bit 10 - Read wait mode" ] # [ inline ( always ) ] pub fn rwmod ( & mut self ) -> _RwmodW { _RwmodW { w : self } } # [ doc = "Bit 9 - Read wait stop" ] # [ inline ( always ) ] pub fn rwstop ( & mut self ) -> _RwstopW { _RwstopW { w : self } } # [ doc = "Bit 8 - Read wait start" ] # [ inline ( always ) ] pub fn rwstart ( & mut self ) -> _RwstartW { _RwstartW { w : self } } # [ doc = "Bits 4:7 - Data block size" ] # [ inline ( always ) ] pub fn dblocksize ( & mut self ) -> _DblocksizeW { _DblocksizeW { w : self } } # [ doc = "Bit 3 - DMA enable bit" ] # [ inline ( always ) ] pub fn dmaen ( & mut self ) -> _DmaenW { _DmaenW { w : self } } # [ doc = "Bit 2 - Data transfer mode selection 1: Stream or SDIO multibyte data transfer." ] # [ inline ( always ) ] pub fn dtmode ( & mut self ) -> _DtmodeW { _DtmodeW { w : self } } # [ doc = "Bit 1 - Data transfer direction selection" ] # [ inline ( always ) ] pub fn dtdir ( & mut self ) -> _DtdirW { _DtdirW { w : self } } # [ doc = "Bit 0 - DTEN" ] # [ inline ( always ) ] pub fn dten ( & mut self ) -> _DtenW { _DtenW { w : self } } } } # [ doc = "data counter register" ] pub struct Dcount { register : VolatileCell < u32 > } # [ doc = "data counter register" ] pub mod dcount { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dcount { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct DatacountR { bits : u32 , } impl DatacountR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:24 - Data count value" ] # [ inline ( always ) ] pub fn datacount ( & self ) -> DatacountR { let bits = { const MASK : u32 = 33554431 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DatacountR { bits } } } } # [ doc = "status register" ] pub struct Sta { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sta { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Sta { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct CeataendR { bits : u8 , } impl CeataendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdioitR { bits : u8 , } impl SdioitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdavlR { bits : u8 , } impl RxdavlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxdavlR { bits : u8 , } impl TxdavlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifoeR { bits : u8 , } impl RxfifoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoeR { bits : u8 , } impl TxfifoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifofR { bits : u8 , } impl RxfifofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifofR { bits : u8 , } impl TxfifofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifohfR { bits : u8 , } impl RxfifohfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoheR { bits : u8 , } impl TxfifoheR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxactR { bits : u8 , } impl RxactR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxactR { bits : u8 , } impl TxactR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdactR { bits : u8 , } impl CmdactR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbckendR { bits : u8 , } impl DbckendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StbiterrR { bits : u8 , } impl StbiterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DataendR { bits : u8 , } impl DataendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdsentR { bits : u8 , } impl CmdsentR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdrendR { bits : u8 , } impl CmdrendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxoverrR { bits : u8 , } impl RxoverrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxunderrR { bits : u8 , } impl TxunderrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtimeoutR { bits : u8 , } impl DtimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtimeoutR { bits : u8 , } impl CtimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcrcfailR { bits : u8 , } impl DcrcfailR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcrcfailR { bits : u8 , } impl CcrcfailR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - CE-ATA command completion signal received for CMD61" ] # [ inline ( always ) ] pub fn ceataend ( & self ) -> CeataendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CeataendR { bits } } # [ doc = "Bit 22 - SDIO interrupt received" ] # [ inline ( always ) ] pub fn sdioit ( & self ) -> SdioitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdioitR { bits } } # [ doc = "Bit 21 - Data available in receive FIFO" ] # [ inline ( always ) ] pub fn rxdavl ( & self ) -> RxdavlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdavlR { bits } } # [ doc = "Bit 20 - Data available in transmit FIFO" ] # [ inline ( always ) ] pub fn txdavl ( & self ) -> TxdavlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxdavlR { bits } } # [ doc = "Bit 19 - Receive FIFO empty" ] # [ inline ( always ) ] pub fn rxfifoe ( & self ) -> RxfifoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifoeR { bits } } # [ doc = "Bit 18 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfifoe ( & self ) -> TxfifoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoeR { bits } } # [ doc = "Bit 17 - Receive FIFO full" ] # [ inline ( always ) ] pub fn rxfifof ( & self ) -> RxfifofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifofR { bits } } # [ doc = "Bit 16 - Transmit FIFO full" ] # [ inline ( always ) ] pub fn txfifof ( & self ) -> TxfifofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifofR { bits } } # [ doc = "Bit 15 - Receive FIFO half full: there are at least 8 words in the FIFO" ] # [ inline ( always ) ] pub fn rxfifohf ( & self ) -> RxfifohfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifohfR { bits } } # [ doc = "Bit 14 - Transmit FIFO half empty: at least 8 words can be written into the FIFO" ] # [ inline ( always ) ] pub fn txfifohe ( & self ) -> TxfifoheR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoheR { bits } } # [ doc = "Bit 13 - Data receive in progress" ] # [ inline ( always ) ] pub fn rxact ( & self ) -> RxactR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxactR { bits } } # [ doc = "Bit 12 - Data transmit in progress" ] # [ inline ( always ) ] pub fn txact ( & self ) -> TxactR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxactR { bits } } # [ doc = "Bit 11 - Command transfer in progress" ] # [ inline ( always ) ] pub fn cmdact ( & self ) -> CmdactR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdactR { bits } } # [ doc = "Bit 10 - Data block sent/received (CRC check passed)" ] # [ inline ( always ) ] pub fn dbckend ( & self ) -> DbckendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbckendR { bits } } # [ doc = "Bit 9 - Start bit not detected on all data signals in wide bus mode" ] # [ inline ( always ) ] pub fn stbiterr ( & self ) -> StbiterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StbiterrR { bits } } # [ doc = "Bit 8 - Data end (data counter, SDIDCOUNT, is zero)" ] # [ inline ( always ) ] pub fn dataend ( & self ) -> DataendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DataendR { bits } } # [ doc = "Bit 7 - Command sent (no response required)" ] # [ inline ( always ) ] pub fn cmdsent ( & self ) -> CmdsentR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdsentR { bits } } # [ doc = "Bit 6 - Command response received (CRC check passed)" ] # [ inline ( always ) ] pub fn cmdrend ( & self ) -> CmdrendR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdrendR { bits } } # [ doc = "Bit 5 - Received FIFO overrun error" ] # [ inline ( always ) ] pub fn rxoverr ( & self ) -> RxoverrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxoverrR { bits } } # [ doc = "Bit 4 - Transmit FIFO underrun error" ] # [ inline ( always ) ] pub fn txunderr ( & self ) -> TxunderrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxunderrR { bits } } # [ doc = "Bit 3 - Data timeout" ] # [ inline ( always ) ] pub fn dtimeout ( & self ) -> DtimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtimeoutR { bits } } # [ doc = "Bit 2 - Command response timeout" ] # [ inline ( always ) ] pub fn ctimeout ( & self ) -> CtimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtimeoutR { bits } } # [ doc = "Bit 1 - Data block sent/received (CRC check failed)" ] # [ inline ( always ) ] pub fn dcrcfail ( & self ) -> DcrcfailR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcrcfailR { bits } } # [ doc = "Bit 0 - Command response received (CRC check failed)" ] # [ inline ( always ) ] pub fn ccrcfail ( & self ) -> CcrcfailR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcrcfailR { bits } } } } # [ doc = "interrupt clear register" ] pub struct Icr { register : VolatileCell < u32 > } # [ doc = "interrupt clear register" ] pub mod icr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CeataendcR { bits : u8 , } impl CeataendcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdioitcR { bits : u8 , } impl SdioitcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbckendcR { bits : u8 , } impl DbckendcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StbiterrcR { bits : u8 , } impl StbiterrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DataendcR { bits : u8 , } impl DataendcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdsentcR { bits : u8 , } impl CmdsentcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdrendcR { bits : u8 , } impl CmdrendcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxoverrcR { bits : u8 , } impl RxoverrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxunderrcR { bits : u8 , } impl TxunderrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtimeoutcR { bits : u8 , } impl DtimeoutcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtimeoutcR { bits : u8 , } impl CtimeoutcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcrcfailcR { bits : u8 , } impl DcrcfailcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcrcfailcR { bits : u8 , } impl CcrcfailcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CeataendcW < 'a > { w : & 'a mut W , } impl < 'a > _CeataendcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdioitcW < 'a > { w : & 'a mut W , } impl < 'a > _SdioitcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbckendcW < 'a > { w : & 'a mut W , } impl < 'a > _DbckendcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StbiterrcW < 'a > { w : & 'a mut W , } impl < 'a > _StbiterrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DataendcW < 'a > { w : & 'a mut W , } impl < 'a > _DataendcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdsentcW < 'a > { w : & 'a mut W , } impl < 'a > _CmdsentcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdrendcW < 'a > { w : & 'a mut W , } impl < 'a > _CmdrendcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxoverrcW < 'a > { w : & 'a mut W , } impl < 'a > _RxoverrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxunderrcW < 'a > { w : & 'a mut W , } impl < 'a > _TxunderrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtimeoutcW < 'a > { w : & 'a mut W , } impl < 'a > _DtimeoutcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtimeoutcW < 'a > { w : & 'a mut W , } impl < 'a > _CtimeoutcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcrcfailcW < 'a > { w : & 'a mut W , } impl < 'a > _DcrcfailcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcrcfailcW < 'a > { w : & 'a mut W , } impl < 'a > _CcrcfailcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - CEATAEND flag clear bit" ] # [ inline ( always ) ] pub fn ceataendc ( & self ) -> CeataendcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CeataendcR { bits } } # [ doc = "Bit 22 - SDIOIT flag clear bit" ] # [ inline ( always ) ] pub fn sdioitc ( & self ) -> SdioitcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdioitcR { bits } } # [ doc = "Bit 10 - DBCKEND flag clear bit" ] # [ inline ( always ) ] pub fn dbckendc ( & self ) -> DbckendcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbckendcR { bits } } # [ doc = "Bit 9 - STBITERR flag clear bit" ] # [ inline ( always ) ] pub fn stbiterrc ( & self ) -> StbiterrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StbiterrcR { bits } } # [ doc = "Bit 8 - DATAEND flag clear bit" ] # [ inline ( always ) ] pub fn dataendc ( & self ) -> DataendcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DataendcR { bits } } # [ doc = "Bit 7 - CMDSENT flag clear bit" ] # [ inline ( always ) ] pub fn cmdsentc ( & self ) -> CmdsentcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdsentcR { bits } } # [ doc = "Bit 6 - CMDREND flag clear bit" ] # [ inline ( always ) ] pub fn cmdrendc ( & self ) -> CmdrendcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdrendcR { bits } } # [ doc = "Bit 5 - RXOVERR flag clear bit" ] # [ inline ( always ) ] pub fn rxoverrc ( & self ) -> RxoverrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxoverrcR { bits } } # [ doc = "Bit 4 - TXUNDERR flag clear bit" ] # [ inline ( always ) ] pub fn txunderrc ( & self ) -> TxunderrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxunderrcR { bits } } # [ doc = "Bit 3 - DTIMEOUT flag clear bit" ] # [ inline ( always ) ] pub fn dtimeoutc ( & self ) -> DtimeoutcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtimeoutcR { bits } } # [ doc = "Bit 2 - CTIMEOUT flag clear bit" ] # [ inline ( always ) ] pub fn ctimeoutc ( & self ) -> CtimeoutcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtimeoutcR { bits } } # [ doc = "Bit 1 - DCRCFAIL flag clear bit" ] # [ inline ( always ) ] pub fn dcrcfailc ( & self ) -> DcrcfailcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcrcfailcR { bits } } # [ doc = "Bit 0 - CCRCFAIL flag clear bit" ] # [ inline ( always ) ] pub fn ccrcfailc ( & self ) -> CcrcfailcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcrcfailcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - CEATAEND flag clear bit" ] # [ inline ( always ) ] pub fn ceataendc ( & mut self ) -> _CeataendcW { _CeataendcW { w : self } } # [ doc = "Bit 22 - SDIOIT flag clear bit" ] # [ inline ( always ) ] pub fn sdioitc ( & mut self ) -> _SdioitcW { _SdioitcW { w : self } } # [ doc = "Bit 10 - DBCKEND flag clear bit" ] # [ inline ( always ) ] pub fn dbckendc ( & mut self ) -> _DbckendcW { _DbckendcW { w : self } } # [ doc = "Bit 9 - STBITERR flag clear bit" ] # [ inline ( always ) ] pub fn stbiterrc ( & mut self ) -> _StbiterrcW { _StbiterrcW { w : self } } # [ doc = "Bit 8 - DATAEND flag clear bit" ] # [ inline ( always ) ] pub fn dataendc ( & mut self ) -> _DataendcW { _DataendcW { w : self } } # [ doc = "Bit 7 - CMDSENT flag clear bit" ] # [ inline ( always ) ] pub fn cmdsentc ( & mut self ) -> _CmdsentcW { _CmdsentcW { w : self } } # [ doc = "Bit 6 - CMDREND flag clear bit" ] # [ inline ( always ) ] pub fn cmdrendc ( & mut self ) -> _CmdrendcW { _CmdrendcW { w : self } } # [ doc = "Bit 5 - RXOVERR flag clear bit" ] # [ inline ( always ) ] pub fn rxoverrc ( & mut self ) -> _RxoverrcW { _RxoverrcW { w : self } } # [ doc = "Bit 4 - TXUNDERR flag clear bit" ] # [ inline ( always ) ] pub fn txunderrc ( & mut self ) -> _TxunderrcW { _TxunderrcW { w : self } } # [ doc = "Bit 3 - DTIMEOUT flag clear bit" ] # [ inline ( always ) ] pub fn dtimeoutc ( & mut self ) -> _DtimeoutcW { _DtimeoutcW { w : self } } # [ doc = "Bit 2 - CTIMEOUT flag clear bit" ] # [ inline ( always ) ] pub fn ctimeoutc ( & mut self ) -> _CtimeoutcW { _CtimeoutcW { w : self } } # [ doc = "Bit 1 - DCRCFAIL flag clear bit" ] # [ inline ( always ) ] pub fn dcrcfailc ( & mut self ) -> _DcrcfailcW { _DcrcfailcW { w : self } } # [ doc = "Bit 0 - CCRCFAIL flag clear bit" ] # [ inline ( always ) ] pub fn ccrcfailc ( & mut self ) -> _CcrcfailcW { _CcrcfailcW { w : self } } } } # [ doc = "mask register" ] pub struct Mask { register : VolatileCell < u32 > } # [ doc = "mask register" ] pub mod mask { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mask { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CeataendieR { bits : u8 , } impl CeataendieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdioitieR { bits : u8 , } impl SdioitieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdavlieR { bits : u8 , } impl RxdavlieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxdavlieR { bits : u8 , } impl TxdavlieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifoeieR { bits : u8 , } impl RxfifoeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoeieR { bits : u8 , } impl TxfifoeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifofieR { bits : u8 , } impl RxfifofieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifofieR { bits : u8 , } impl TxfifofieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfifohfieR { bits : u8 , } impl RxfifohfieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoheieR { bits : u8 , } impl TxfifoheieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxactieR { bits : u8 , } impl RxactieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxactieR { bits : u8 , } impl TxactieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdactieR { bits : u8 , } impl CmdactieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbckendieR { bits : u8 , } impl DbckendieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StbiterrieR { bits : u8 , } impl StbiterrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DataendieR { bits : u8 , } impl DataendieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdsentieR { bits : u8 , } impl CmdsentieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmdrendieR { bits : u8 , } impl CmdrendieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxoverrieR { bits : u8 , } impl RxoverrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxunderrieR { bits : u8 , } impl TxunderrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtimeoutieR { bits : u8 , } impl DtimeoutieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtimeoutieR { bits : u8 , } impl CtimeoutieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcrcfailieR { bits : u8 , } impl DcrcfailieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcrcfailieR { bits : u8 , } impl CcrcfailieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CeataendieW < 'a > { w : & 'a mut W , } impl < 'a > _CeataendieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdioitieW < 'a > { w : & 'a mut W , } impl < 'a > _SdioitieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdavlieW < 'a > { w : & 'a mut W , } impl < 'a > _RxdavlieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxdavlieW < 'a > { w : & 'a mut W , } impl < 'a > _TxdavlieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxfifoeieW < 'a > { w : & 'a mut W , } impl < 'a > _RxfifoeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoeieW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxfifofieW < 'a > { w : & 'a mut W , } impl < 'a > _RxfifofieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifofieW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifofieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxfifohfieW < 'a > { w : & 'a mut W , } impl < 'a > _RxfifohfieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoheieW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoheieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxactieW < 'a > { w : & 'a mut W , } impl < 'a > _RxactieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxactieW < 'a > { w : & 'a mut W , } impl < 'a > _TxactieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdactieW < 'a > { w : & 'a mut W , } impl < 'a > _CmdactieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbckendieW < 'a > { w : & 'a mut W , } impl < 'a > _DbckendieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StbiterrieW < 'a > { w : & 'a mut W , } impl < 'a > _StbiterrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DataendieW < 'a > { w : & 'a mut W , } impl < 'a > _DataendieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdsentieW < 'a > { w : & 'a mut W , } impl < 'a > _CmdsentieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmdrendieW < 'a > { w : & 'a mut W , } impl < 'a > _CmdrendieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxoverrieW < 'a > { w : & 'a mut W , } impl < 'a > _RxoverrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxunderrieW < 'a > { w : & 'a mut W , } impl < 'a > _TxunderrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtimeoutieW < 'a > { w : & 'a mut W , } impl < 'a > _DtimeoutieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtimeoutieW < 'a > { w : & 'a mut W , } impl < 'a > _CtimeoutieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcrcfailieW < 'a > { w : & 'a mut W , } impl < 'a > _DcrcfailieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcrcfailieW < 'a > { w : & 'a mut W , } impl < 'a > _CcrcfailieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - CE-ATA command completion signal received interrupt enable" ] # [ inline ( always ) ] pub fn ceataendie ( & self ) -> CeataendieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CeataendieR { bits } } # [ doc = "Bit 22 - SDIO mode interrupt received interrupt enable" ] # [ inline ( always ) ] pub fn sdioitie ( & self ) -> SdioitieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdioitieR { bits } } # [ doc = "Bit 21 - Data available in Rx FIFO interrupt enable" ] # [ inline ( always ) ] pub fn rxdavlie ( & self ) -> RxdavlieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdavlieR { bits } } # [ doc = "Bit 20 - Data available in Tx FIFO interrupt enable" ] # [ inline ( always ) ] pub fn txdavlie ( & self ) -> TxdavlieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxdavlieR { bits } } # [ doc = "Bit 19 - Rx FIFO empty interrupt enable" ] # [ inline ( always ) ] pub fn rxfifoeie ( & self ) -> RxfifoeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifoeieR { bits } } # [ doc = "Bit 18 - Tx FIFO empty interrupt enable" ] # [ inline ( always ) ] pub fn txfifoeie ( & self ) -> TxfifoeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoeieR { bits } } # [ doc = "Bit 17 - Rx FIFO full interrupt enable" ] # [ inline ( always ) ] pub fn rxfifofie ( & self ) -> RxfifofieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifofieR { bits } } # [ doc = "Bit 16 - Tx FIFO full interrupt enable" ] # [ inline ( always ) ] pub fn txfifofie ( & self ) -> TxfifofieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifofieR { bits } } # [ doc = "Bit 15 - Rx FIFO half full interrupt enable" ] # [ inline ( always ) ] pub fn rxfifohfie ( & self ) -> RxfifohfieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfifohfieR { bits } } # [ doc = "Bit 14 - Tx FIFO half empty interrupt enable" ] # [ inline ( always ) ] pub fn txfifoheie ( & self ) -> TxfifoheieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoheieR { bits } } # [ doc = "Bit 13 - Data receive acting interrupt enable" ] # [ inline ( always ) ] pub fn rxactie ( & self ) -> RxactieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxactieR { bits } } # [ doc = "Bit 12 - Data transmit acting interrupt enable" ] # [ inline ( always ) ] pub fn txactie ( & self ) -> TxactieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxactieR { bits } } # [ doc = "Bit 11 - Command acting interrupt enable" ] # [ inline ( always ) ] pub fn cmdactie ( & self ) -> CmdactieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdactieR { bits } } # [ doc = "Bit 10 - Data block end interrupt enable" ] # [ inline ( always ) ] pub fn dbckendie ( & self ) -> DbckendieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbckendieR { bits } } # [ doc = "Bit 9 - Start bit error interrupt enable" ] # [ inline ( always ) ] pub fn stbiterrie ( & self ) -> StbiterrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StbiterrieR { bits } } # [ doc = "Bit 8 - Data end interrupt enable" ] # [ inline ( always ) ] pub fn dataendie ( & self ) -> DataendieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DataendieR { bits } } # [ doc = "Bit 7 - Command sent interrupt enable" ] # [ inline ( always ) ] pub fn cmdsentie ( & self ) -> CmdsentieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdsentieR { bits } } # [ doc = "Bit 6 - Command response received interrupt enable" ] # [ inline ( always ) ] pub fn cmdrendie ( & self ) -> CmdrendieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmdrendieR { bits } } # [ doc = "Bit 5 - Rx FIFO overrun error interrupt enable" ] # [ inline ( always ) ] pub fn rxoverrie ( & self ) -> RxoverrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxoverrieR { bits } } # [ doc = "Bit 4 - Tx FIFO underrun error interrupt enable" ] # [ inline ( always ) ] pub fn txunderrie ( & self ) -> TxunderrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxunderrieR { bits } } # [ doc = "Bit 3 - Data timeout interrupt enable" ] # [ inline ( always ) ] pub fn dtimeoutie ( & self ) -> DtimeoutieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtimeoutieR { bits } } # [ doc = "Bit 2 - Command timeout interrupt enable" ] # [ inline ( always ) ] pub fn ctimeoutie ( & self ) -> CtimeoutieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtimeoutieR { bits } } # [ doc = "Bit 1 - Data CRC fail interrupt enable" ] # [ inline ( always ) ] pub fn dcrcfailie ( & self ) -> DcrcfailieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcrcfailieR { bits } } # [ doc = "Bit 0 - Command CRC fail interrupt enable" ] # [ inline ( always ) ] pub fn ccrcfailie ( & self ) -> CcrcfailieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcrcfailieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - CE-ATA command completion signal received interrupt enable" ] # [ inline ( always ) ] pub fn ceataendie ( & mut self ) -> _CeataendieW { _CeataendieW { w : self } } # [ doc = "Bit 22 - SDIO mode interrupt received interrupt enable" ] # [ inline ( always ) ] pub fn sdioitie ( & mut self ) -> _SdioitieW { _SdioitieW { w : self } } # [ doc = "Bit 21 - Data available in Rx FIFO interrupt enable" ] # [ inline ( always ) ] pub fn rxdavlie ( & mut self ) -> _RxdavlieW { _RxdavlieW { w : self } } # [ doc = "Bit 20 - Data available in Tx FIFO interrupt enable" ] # [ inline ( always ) ] pub fn txdavlie ( & mut self ) -> _TxdavlieW { _TxdavlieW { w : self } } # [ doc = "Bit 19 - Rx FIFO empty interrupt enable" ] # [ inline ( always ) ] pub fn rxfifoeie ( & mut self ) -> _RxfifoeieW { _RxfifoeieW { w : self } } # [ doc = "Bit 18 - Tx FIFO empty interrupt enable" ] # [ inline ( always ) ] pub fn txfifoeie ( & mut self ) -> _TxfifoeieW { _TxfifoeieW { w : self } } # [ doc = "Bit 17 - Rx FIFO full interrupt enable" ] # [ inline ( always ) ] pub fn rxfifofie ( & mut self ) -> _RxfifofieW { _RxfifofieW { w : self } } # [ doc = "Bit 16 - Tx FIFO full interrupt enable" ] # [ inline ( always ) ] pub fn txfifofie ( & mut self ) -> _TxfifofieW { _TxfifofieW { w : self } } # [ doc = "Bit 15 - Rx FIFO half full interrupt enable" ] # [ inline ( always ) ] pub fn rxfifohfie ( & mut self ) -> _RxfifohfieW { _RxfifohfieW { w : self } } # [ doc = "Bit 14 - Tx FIFO half empty interrupt enable" ] # [ inline ( always ) ] pub fn txfifoheie ( & mut self ) -> _TxfifoheieW { _TxfifoheieW { w : self } } # [ doc = "Bit 13 - Data receive acting interrupt enable" ] # [ inline ( always ) ] pub fn rxactie ( & mut self ) -> _RxactieW { _RxactieW { w : self } } # [ doc = "Bit 12 - Data transmit acting interrupt enable" ] # [ inline ( always ) ] pub fn txactie ( & mut self ) -> _TxactieW { _TxactieW { w : self } } # [ doc = "Bit 11 - Command acting interrupt enable" ] # [ inline ( always ) ] pub fn cmdactie ( & mut self ) -> _CmdactieW { _CmdactieW { w : self } } # [ doc = "Bit 10 - Data block end interrupt enable" ] # [ inline ( always ) ] pub fn dbckendie ( & mut self ) -> _DbckendieW { _DbckendieW { w : self } } # [ doc = "Bit 9 - Start bit error interrupt enable" ] # [ inline ( always ) ] pub fn stbiterrie ( & mut self ) -> _StbiterrieW { _StbiterrieW { w : self } } # [ doc = "Bit 8 - Data end interrupt enable" ] # [ inline ( always ) ] pub fn dataendie ( & mut self ) -> _DataendieW { _DataendieW { w : self } } # [ doc = "Bit 7 - Command sent interrupt enable" ] # [ inline ( always ) ] pub fn cmdsentie ( & mut self ) -> _CmdsentieW { _CmdsentieW { w : self } } # [ doc = "Bit 6 - Command response received interrupt enable" ] # [ inline ( always ) ] pub fn cmdrendie ( & mut self ) -> _CmdrendieW { _CmdrendieW { w : self } } # [ doc = "Bit 5 - Rx FIFO overrun error interrupt enable" ] # [ inline ( always ) ] pub fn rxoverrie ( & mut self ) -> _RxoverrieW { _RxoverrieW { w : self } } # [ doc = "Bit 4 - Tx FIFO underrun error interrupt enable" ] # [ inline ( always ) ] pub fn txunderrie ( & mut self ) -> _TxunderrieW { _TxunderrieW { w : self } } # [ doc = "Bit 3 - Data timeout interrupt enable" ] # [ inline ( always ) ] pub fn dtimeoutie ( & mut self ) -> _DtimeoutieW { _DtimeoutieW { w : self } } # [ doc = "Bit 2 - Command timeout interrupt enable" ] # [ inline ( always ) ] pub fn ctimeoutie ( & mut self ) -> _CtimeoutieW { _CtimeoutieW { w : self } } # [ doc = "Bit 1 - Data CRC fail interrupt enable" ] # [ inline ( always ) ] pub fn dcrcfailie ( & mut self ) -> _DcrcfailieW { _DcrcfailieW { w : self } } # [ doc = "Bit 0 - Command CRC fail interrupt enable" ] # [ inline ( always ) ] pub fn ccrcfailie ( & mut self ) -> _CcrcfailieW { _CcrcfailieW { w : self } } } } # [ doc = "FIFO counter register" ] pub struct Fifocnt { register : VolatileCell < u32 > } # [ doc = "FIFO counter register" ] pub mod fifocnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Fifocnt { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct FifocountR { bits : u32 , } impl FifocountR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:23 - Remaining number of words to be written to or read from the FIFO." ] # [ inline ( always ) ] pub fn fifocount ( & self ) -> FifocountR { let bits = { const MASK : u32 = 16777215 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; FifocountR { bits } } } } # [ doc = "data FIFO register" ] pub struct Fifo { register : VolatileCell < u32 > } # [ doc = "data FIFO register" ] pub mod fifo { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Fifo { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FifodataR { bits : u32 , } impl FifodataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _FifodataW < 'a > { w : & 'a mut W , } impl < 'a > _FifodataW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Receive and transmit FIFO data" ] # [ inline ( always ) ] pub fn fifodata ( & self ) -> FifodataR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; FifodataR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Receive and transmit FIFO data" ] # [ inline ( always ) ] pub fn fifodata ( & mut self ) -> _FifodataW { _FifodataW { w : self } } } } } # [ doc = "Secure digital input/output interface" ] pub struct Sdio { register_block : sdio :: RegisterBlock } impl Deref for Sdio { type Target = sdio :: RegisterBlock ; fn deref ( & self ) -> & sdio :: RegisterBlock { & self . register_block } } # [ doc = "Analog-to-digital converter" ] pub const ADC1 : Peripheral < Adc1 > = unsafe { Peripheral :: new ( 1073815552 ) } ; # [ doc = "Analog-to-digital converter" ] pub mod adc1 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - status register" ] pub sr : Sr , # [ doc = "0x04 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x08 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x0c - sample time register 1" ] pub smpr1 : Smpr1 , # [ doc = "0x10 - sample time register 2" ] pub smpr2 : Smpr2 , # [ doc = "0x14 - injected channel data offset register x" ] pub jofr1 : Jofr1 , # [ doc = "0x18 - injected channel data offset register x" ] pub jofr2 : Jofr2 , # [ doc = "0x1c - injected channel data offset register x" ] pub jofr3 : Jofr3 , # [ doc = "0x20 - injected channel data offset register x" ] pub jofr4 : Jofr4 , # [ doc = "0x24 - watchdog higher threshold register" ] pub htr : Htr , # [ doc = "0x28 - watchdog lower threshold register" ] pub ltr : Ltr , # [ doc = "0x2c - regular sequence register 1" ] pub sqr1 : Sqr1 , # [ doc = "0x30 - regular sequence register 2" ] pub sqr2 : Sqr2 , # [ doc = "0x34 - regular sequence register 3" ] pub sqr3 : Sqr3 , # [ doc = "0x38 - injected sequence register" ] pub jsqr : Jsqr , # [ doc = "0x3c - injected data register x" ] pub jdr1 : Jdr1 , # [ doc = "0x40 - injected data register x" ] pub jdr2 : Jdr2 , # [ doc = "0x44 - injected data register x" ] pub jdr3 : Jdr3 , # [ doc = "0x48 - injected data register x" ] pub jdr4 : Jdr4 , # [ doc = "0x4c - regular data register" ] pub dr : Dr , } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OvrR { bits : u8 , } impl OvrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StrtR { bits : u8 , } impl StrtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JstrtR { bits : u8 , } impl JstrtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JeocR { bits : u8 , } impl JeocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EocR { bits : u8 , } impl EocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwdR { bits : u8 , } impl AwdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OvrW < 'a > { w : & 'a mut W , } impl < 'a > _OvrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StrtW < 'a > { w : & 'a mut W , } impl < 'a > _StrtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JstrtW < 'a > { w : & 'a mut W , } impl < 'a > _JstrtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JeocW < 'a > { w : & 'a mut W , } impl < 'a > _JeocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EocW < 'a > { w : & 'a mut W , } impl < 'a > _EocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwdW < 'a > { w : & 'a mut W , } impl < 'a > _AwdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 5 - Overrun" ] # [ inline ( always ) ] pub fn ovr ( & self ) -> OvrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrR { bits } } # [ doc = "Bit 4 - Regular channel start flag" ] # [ inline ( always ) ] pub fn strt ( & self ) -> StrtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StrtR { bits } } # [ doc = "Bit 3 - Injected channel start flag" ] # [ inline ( always ) ] pub fn jstrt ( & self ) -> JstrtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JstrtR { bits } } # [ doc = "Bit 2 - Injected channel end of conversion" ] # [ inline ( always ) ] pub fn jeoc ( & self ) -> JeocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JeocR { bits } } # [ doc = "Bit 1 - Regular channel end of conversion" ] # [ inline ( always ) ] pub fn eoc ( & self ) -> EocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EocR { bits } } # [ doc = "Bit 0 - Analog watchdog flag" ] # [ inline ( always ) ] pub fn awd ( & self ) -> AwdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - Overrun" ] # [ inline ( always ) ] pub fn ovr ( & mut self ) -> _OvrW { _OvrW { w : self } } # [ doc = "Bit 4 - Regular channel start flag" ] # [ inline ( always ) ] pub fn strt ( & mut self ) -> _StrtW { _StrtW { w : self } } # [ doc = "Bit 3 - Injected channel start flag" ] # [ inline ( always ) ] pub fn jstrt ( & mut self ) -> _JstrtW { _JstrtW { w : self } } # [ doc = "Bit 2 - Injected channel end of conversion" ] # [ inline ( always ) ] pub fn jeoc ( & mut self ) -> _JeocW { _JeocW { w : self } } # [ doc = "Bit 1 - Regular channel end of conversion" ] # [ inline ( always ) ] pub fn eoc ( & mut self ) -> _EocW { _EocW { w : self } } # [ doc = "Bit 0 - Analog watchdog flag" ] # [ inline ( always ) ] pub fn awd ( & mut self ) -> _AwdW { _AwdW { w : self } } } } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OvrieR { bits : u8 , } impl OvrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ResR { bits : u8 , } impl ResR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwdenR { bits : u8 , } impl AwdenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JawdenR { bits : u8 , } impl JawdenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscnumR { bits : u8 , } impl DiscnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JdiscenR { bits : u8 , } impl JdiscenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscenR { bits : u8 , } impl DiscenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JautoR { bits : u8 , } impl JautoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwdsglR { bits : u8 , } impl AwdsglR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ScanR { bits : u8 , } impl ScanR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JeocieR { bits : u8 , } impl JeocieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwdieR { bits : u8 , } impl AwdieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EocieR { bits : u8 , } impl EocieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwdchR { bits : u8 , } impl AwdchR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OvrieW < 'a > { w : & 'a mut W , } impl < 'a > _OvrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ResW < 'a > { w : & 'a mut W , } impl < 'a > _ResW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwdenW < 'a > { w : & 'a mut W , } impl < 'a > _AwdenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JawdenW < 'a > { w : & 'a mut W , } impl < 'a > _JawdenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscnumW < 'a > { w : & 'a mut W , } impl < 'a > _DiscnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JdiscenW < 'a > { w : & 'a mut W , } impl < 'a > _JdiscenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscenW < 'a > { w : & 'a mut W , } impl < 'a > _DiscenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JautoW < 'a > { w : & 'a mut W , } impl < 'a > _JautoW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwdsglW < 'a > { w : & 'a mut W , } impl < 'a > _AwdsglW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ScanW < 'a > { w : & 'a mut W , } impl < 'a > _ScanW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JeocieW < 'a > { w : & 'a mut W , } impl < 'a > _JeocieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwdieW < 'a > { w : & 'a mut W , } impl < 'a > _AwdieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EocieW < 'a > { w : & 'a mut W , } impl < 'a > _EocieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwdchW < 'a > { w : & 'a mut W , } impl < 'a > _AwdchW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 26 - Overrun interrupt enable" ] # [ inline ( always ) ] pub fn ovrie ( & self ) -> OvrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrieR { bits } } # [ doc = "Bits 24:25 - Resolution" ] # [ inline ( always ) ] pub fn res ( & self ) -> ResR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ResR { bits } } # [ doc = "Bit 23 - Analog watchdog enable on regular channels" ] # [ inline ( always ) ] pub fn awden ( & self ) -> AwdenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwdenR { bits } } # [ doc = "Bit 22 - Analog watchdog enable on injected channels" ] # [ inline ( always ) ] pub fn jawden ( & self ) -> JawdenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JawdenR { bits } } # [ doc = "Bits 13:15 - Discontinuous mode channel count" ] # [ inline ( always ) ] pub fn discnum ( & self ) -> DiscnumR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscnumR { bits } } # [ doc = "Bit 12 - Discontinuous mode on injected channels" ] # [ inline ( always ) ] pub fn jdiscen ( & self ) -> JdiscenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JdiscenR { bits } } # [ doc = "Bit 11 - Discontinuous mode on regular channels" ] # [ inline ( always ) ] pub fn discen ( & self ) -> DiscenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscenR { bits } } # [ doc = "Bit 10 - Automatic injected group conversion" ] # [ inline ( always ) ] pub fn jauto ( & self ) -> JautoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JautoR { bits } } # [ doc = "Bit 9 - Enable the watchdog on a single channel in scan mode" ] # [ inline ( always ) ] pub fn awdsgl ( & self ) -> AwdsglR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwdsglR { bits } } # [ doc = "Bit 8 - Scan mode" ] # [ inline ( always ) ] pub fn scan ( & self ) -> ScanR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ScanR { bits } } # [ doc = "Bit 7 - Interrupt enable for injected channels" ] # [ inline ( always ) ] pub fn jeocie ( & self ) -> JeocieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JeocieR { bits } } # [ doc = "Bit 6 - Analog watchdog interrupt enable" ] # [ inline ( always ) ] pub fn awdie ( & self ) -> AwdieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwdieR { bits } } # [ doc = "Bit 5 - Interrupt enable for EOC" ] # [ inline ( always ) ] pub fn eocie ( & self ) -> EocieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EocieR { bits } } # [ doc = "Bits 0:4 - Analog watchdog channel select bits" ] # [ inline ( always ) ] pub fn awdch ( & self ) -> AwdchR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwdchR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 26 - Overrun interrupt enable" ] # [ inline ( always ) ] pub fn ovrie ( & mut self ) -> _OvrieW { _OvrieW { w : self } } # [ doc = "Bits 24:25 - Resolution" ] # [ inline ( always ) ] pub fn res ( & mut self ) -> _ResW { _ResW { w : self } } # [ doc = "Bit 23 - Analog watchdog enable on regular channels" ] # [ inline ( always ) ] pub fn awden ( & mut self ) -> _AwdenW { _AwdenW { w : self } } # [ doc = "Bit 22 - Analog watchdog enable on injected channels" ] # [ inline ( always ) ] pub fn jawden ( & mut self ) -> _JawdenW { _JawdenW { w : self } } # [ doc = "Bits 13:15 - Discontinuous mode channel count" ] # [ inline ( always ) ] pub fn discnum ( & mut self ) -> _DiscnumW { _DiscnumW { w : self } } # [ doc = "Bit 12 - Discontinuous mode on injected channels" ] # [ inline ( always ) ] pub fn jdiscen ( & mut self ) -> _JdiscenW { _JdiscenW { w : self } } # [ doc = "Bit 11 - Discontinuous mode on regular channels" ] # [ inline ( always ) ] pub fn discen ( & mut self ) -> _DiscenW { _DiscenW { w : self } } # [ doc = "Bit 10 - Automatic injected group conversion" ] # [ inline ( always ) ] pub fn jauto ( & mut self ) -> _JautoW { _JautoW { w : self } } # [ doc = "Bit 9 - Enable the watchdog on a single channel in scan mode" ] # [ inline ( always ) ] pub fn awdsgl ( & mut self ) -> _AwdsglW { _AwdsglW { w : self } } # [ doc = "Bit 8 - Scan mode" ] # [ inline ( always ) ] pub fn scan ( & mut self ) -> _ScanW { _ScanW { w : self } } # [ doc = "Bit 7 - Interrupt enable for injected channels" ] # [ inline ( always ) ] pub fn jeocie ( & mut self ) -> _JeocieW { _JeocieW { w : self } } # [ doc = "Bit 6 - Analog watchdog interrupt enable" ] # [ inline ( always ) ] pub fn awdie ( & mut self ) -> _AwdieW { _AwdieW { w : self } } # [ doc = "Bit 5 - Interrupt enable for EOC" ] # [ inline ( always ) ] pub fn eocie ( & mut self ) -> _EocieW { _EocieW { w : self } } # [ doc = "Bits 0:4 - Analog watchdog channel select bits" ] # [ inline ( always ) ] pub fn awdch ( & mut self ) -> _AwdchW { _AwdchW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SwstartR { bits : u8 , } impl SwstartR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtenR { bits : u8 , } impl ExtenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExtselR { bits : u8 , } impl ExtselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JswstartR { bits : u8 , } impl JswstartR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JextenR { bits : u8 , } impl JextenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JextselR { bits : u8 , } impl JextselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlignR { bits : u8 , } impl AlignR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EocsR { bits : u8 , } impl EocsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DdsR { bits : u8 , } impl DdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmaR { bits : u8 , } impl DmaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ContR { bits : u8 , } impl ContR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AdonR { bits : u8 , } impl AdonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SwstartW < 'a > { w : & 'a mut W , } impl < 'a > _SwstartW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtenW < 'a > { w : & 'a mut W , } impl < 'a > _ExtenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExtselW < 'a > { w : & 'a mut W , } impl < 'a > _ExtselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JswstartW < 'a > { w : & 'a mut W , } impl < 'a > _JswstartW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JextenW < 'a > { w : & 'a mut W , } impl < 'a > _JextenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JextselW < 'a > { w : & 'a mut W , } impl < 'a > _JextselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlignW < 'a > { w : & 'a mut W , } impl < 'a > _AlignW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EocsW < 'a > { w : & 'a mut W , } impl < 'a > _EocsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DdsW < 'a > { w : & 'a mut W , } impl < 'a > _DdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmaW < 'a > { w : & 'a mut W , } impl < 'a > _DmaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ContW < 'a > { w : & 'a mut W , } impl < 'a > _ContW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AdonW < 'a > { w : & 'a mut W , } impl < 'a > _AdonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 30 - Start conversion of regular channels" ] # [ inline ( always ) ] pub fn swstart ( & self ) -> SwstartR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SwstartR { bits } } # [ doc = "Bits 28:29 - External trigger enable for regular channels" ] # [ inline ( always ) ] pub fn exten ( & self ) -> ExtenR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtenR { bits } } # [ doc = "Bits 24:27 - External event select for regular group" ] # [ inline ( always ) ] pub fn extsel ( & self ) -> ExtselR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ExtselR { bits } } # [ doc = "Bit 22 - Start conversion of injected channels" ] # [ inline ( always ) ] pub fn jswstart ( & self ) -> JswstartR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JswstartR { bits } } # [ doc = "Bits 20:21 - External trigger enable for injected channels" ] # [ inline ( always ) ] pub fn jexten ( & self ) -> JextenR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JextenR { bits } } # [ doc = "Bits 16:19 - External event select for injected group" ] # [ inline ( always ) ] pub fn jextsel ( & self ) -> JextselR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JextselR { bits } } # [ doc = "Bit 11 - Data alignment" ] # [ inline ( always ) ] pub fn align ( & self ) -> AlignR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlignR { bits } } # [ doc = "Bit 10 - End of conversion selection" ] # [ inline ( always ) ] pub fn eocs ( & self ) -> EocsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EocsR { bits } } # [ doc = "Bit 9 - DMA disable selection (for single ADC mode)" ] # [ inline ( always ) ] pub fn dds ( & self ) -> DdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DdsR { bits } } # [ doc = "Bit 8 - Direct memory access mode (for single ADC mode)" ] # [ inline ( always ) ] pub fn dma ( & self ) -> DmaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmaR { bits } } # [ doc = "Bit 1 - Continuous conversion" ] # [ inline ( always ) ] pub fn cont ( & self ) -> ContR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ContR { bits } } # [ doc = "Bit 0 - A/D Converter ON / OFF" ] # [ inline ( always ) ] pub fn adon ( & self ) -> AdonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AdonR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 30 - Start conversion of regular channels" ] # [ inline ( always ) ] pub fn swstart ( & mut self ) -> _SwstartW { _SwstartW { w : self } } # [ doc = "Bits 28:29 - External trigger enable for regular channels" ] # [ inline ( always ) ] pub fn exten ( & mut self ) -> _ExtenW { _ExtenW { w : self } } # [ doc = "Bits 24:27 - External event select for regular group" ] # [ inline ( always ) ] pub fn extsel ( & mut self ) -> _ExtselW { _ExtselW { w : self } } # [ doc = "Bit 22 - Start conversion of injected channels" ] # [ inline ( always ) ] pub fn jswstart ( & mut self ) -> _JswstartW { _JswstartW { w : self } } # [ doc = "Bits 20:21 - External trigger enable for injected channels" ] # [ inline ( always ) ] pub fn jexten ( & mut self ) -> _JextenW { _JextenW { w : self } } # [ doc = "Bits 16:19 - External event select for injected group" ] # [ inline ( always ) ] pub fn jextsel ( & mut self ) -> _JextselW { _JextselW { w : self } } # [ doc = "Bit 11 - Data alignment" ] # [ inline ( always ) ] pub fn align ( & mut self ) -> _AlignW { _AlignW { w : self } } # [ doc = "Bit 10 - End of conversion selection" ] # [ inline ( always ) ] pub fn eocs ( & mut self ) -> _EocsW { _EocsW { w : self } } # [ doc = "Bit 9 - DMA disable selection (for single ADC mode)" ] # [ inline ( always ) ] pub fn dds ( & mut self ) -> _DdsW { _DdsW { w : self } } # [ doc = "Bit 8 - Direct memory access mode (for single ADC mode)" ] # [ inline ( always ) ] pub fn dma ( & mut self ) -> _DmaW { _DmaW { w : self } } # [ doc = "Bit 1 - Continuous conversion" ] # [ inline ( always ) ] pub fn cont ( & mut self ) -> _ContW { _ContW { w : self } } # [ doc = "Bit 0 - A/D Converter ON / OFF" ] # [ inline ( always ) ] pub fn adon ( & mut self ) -> _AdonW { _AdonW { w : self } } } } # [ doc = "sample time register 1" ] pub struct Smpr1 { register : VolatileCell < u32 > } # [ doc = "sample time register 1" ] pub mod smpr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smpr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SmpxXR { bits : u32 , } impl SmpxXR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SmpxXW < 'a > { w : & 'a mut W , } impl < 'a > _SmpxXW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Sample time bits" ] # [ inline ( always ) ] pub fn smpx_x ( & self ) -> SmpxXR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SmpxXR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Sample time bits" ] # [ inline ( always ) ] pub fn smpx_x ( & mut self ) -> _SmpxXW { _SmpxXW { w : self } } } } # [ doc = "sample time register 2" ] pub struct Smpr2 { register : VolatileCell < u32 > } # [ doc = "sample time register 2" ] pub mod smpr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smpr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SmpxXR { bits : u32 , } impl SmpxXR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SmpxXW < 'a > { w : & 'a mut W , } impl < 'a > _SmpxXW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Sample time bits" ] # [ inline ( always ) ] pub fn smpx_x ( & self ) -> SmpxXR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SmpxXR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Sample time bits" ] # [ inline ( always ) ] pub fn smpx_x ( & mut self ) -> _SmpxXW { _SmpxXW { w : self } } } } # [ doc = "injected channel data offset register x" ] pub struct Jofr1 { register : VolatileCell < u32 > } # [ doc = "injected channel data offset register x" ] pub mod jofr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Jofr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Joffset1R { bits : u16 , } impl Joffset1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Joffset1W < 'a > { w : & 'a mut W , } impl < 'a > _Joffset1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset1 ( & self ) -> Joffset1R { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Joffset1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset1 ( & mut self ) -> _Joffset1W { _Joffset1W { w : self } } } } # [ doc = "injected channel data offset register x" ] pub struct Jofr2 { register : VolatileCell < u32 > } # [ doc = "injected channel data offset register x" ] pub mod jofr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Jofr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Joffset2R { bits : u16 , } impl Joffset2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Joffset2W < 'a > { w : & 'a mut W , } impl < 'a > _Joffset2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset2 ( & self ) -> Joffset2R { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Joffset2R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset2 ( & mut self ) -> _Joffset2W { _Joffset2W { w : self } } } } # [ doc = "injected channel data offset register x" ] pub struct Jofr3 { register : VolatileCell < u32 > } # [ doc = "injected channel data offset register x" ] pub mod jofr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Jofr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Joffset3R { bits : u16 , } impl Joffset3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Joffset3W < 'a > { w : & 'a mut W , } impl < 'a > _Joffset3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset3 ( & self ) -> Joffset3R { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Joffset3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset3 ( & mut self ) -> _Joffset3W { _Joffset3W { w : self } } } } # [ doc = "injected channel data offset register x" ] pub struct Jofr4 { register : VolatileCell < u32 > } # [ doc = "injected channel data offset register x" ] pub mod jofr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Jofr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Joffset4R { bits : u16 , } impl Joffset4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Joffset4W < 'a > { w : & 'a mut W , } impl < 'a > _Joffset4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset4 ( & self ) -> Joffset4R { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Joffset4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Data offset for injected channel x" ] # [ inline ( always ) ] pub fn joffset4 ( & mut self ) -> _Joffset4W { _Joffset4W { w : self } } } } # [ doc = "watchdog higher threshold register" ] pub struct Htr { register : VolatileCell < u32 > } # [ doc = "watchdog higher threshold register" ] pub mod htr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Htr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HtR { bits : u16 , } impl HtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _HtW < 'a > { w : & 'a mut W , } impl < 'a > _HtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Analog watchdog higher threshold" ] # [ inline ( always ) ] pub fn ht ( & self ) -> HtR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4095 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Analog watchdog higher threshold" ] # [ inline ( always ) ] pub fn ht ( & mut self ) -> _HtW { _HtW { w : self } } } } # [ doc = "watchdog lower threshold register" ] pub struct Ltr { register : VolatileCell < u32 > } # [ doc = "watchdog lower threshold register" ] pub mod ltr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ltr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LtR { bits : u16 , } impl LtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _LtW < 'a > { w : & 'a mut W , } impl < 'a > _LtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Analog watchdog lower threshold" ] # [ inline ( always ) ] pub fn lt ( & self ) -> LtR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; LtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Analog watchdog lower threshold" ] # [ inline ( always ) ] pub fn lt ( & mut self ) -> _LtW { _LtW { w : self } } } } # [ doc = "regular sequence register 1" ] pub struct Sqr1 { register : VolatileCell < u32 > } # [ doc = "regular sequence register 1" ] pub mod sqr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sqr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LR { bits : u8 , } impl LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq16R { bits : u8 , } impl Sq16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq15R { bits : u8 , } impl Sq15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq14R { bits : u8 , } impl Sq14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq13R { bits : u8 , } impl Sq13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LW < 'a > { w : & 'a mut W , } impl < 'a > _LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq16W < 'a > { w : & 'a mut W , } impl < 'a > _Sq16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq15W < 'a > { w : & 'a mut W , } impl < 'a > _Sq15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq14W < 'a > { w : & 'a mut W , } impl < 'a > _Sq14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq13W < 'a > { w : & 'a mut W , } impl < 'a > _Sq13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 20:23 - Regular channel sequence length" ] # [ inline ( always ) ] pub fn l ( & self ) -> LR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LR { bits } } # [ doc = "Bits 15:19 - 16th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq16 ( & self ) -> Sq16R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq16R { bits } } # [ doc = "Bits 10:14 - 15th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq15 ( & self ) -> Sq15R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq15R { bits } } # [ doc = "Bits 5:9 - 14th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq14 ( & self ) -> Sq14R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq14R { bits } } # [ doc = "Bits 0:4 - 13th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq13 ( & self ) -> Sq13R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq13R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 20:23 - Regular channel sequence length" ] # [ inline ( always ) ] pub fn l ( & mut self ) -> _LW { _LW { w : self } } # [ doc = "Bits 15:19 - 16th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq16 ( & mut self ) -> _Sq16W { _Sq16W { w : self } } # [ doc = "Bits 10:14 - 15th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq15 ( & mut self ) -> _Sq15W { _Sq15W { w : self } } # [ doc = "Bits 5:9 - 14th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq14 ( & mut self ) -> _Sq14W { _Sq14W { w : self } } # [ doc = "Bits 0:4 - 13th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq13 ( & mut self ) -> _Sq13W { _Sq13W { w : self } } } } # [ doc = "regular sequence register 2" ] pub struct Sqr2 { register : VolatileCell < u32 > } # [ doc = "regular sequence register 2" ] pub mod sqr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sqr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Sq12R { bits : u8 , } impl Sq12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq11R { bits : u8 , } impl Sq11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq10R { bits : u8 , } impl Sq10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq9R { bits : u8 , } impl Sq9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq8R { bits : u8 , } impl Sq8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq7R { bits : u8 , } impl Sq7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Sq12W < 'a > { w : & 'a mut W , } impl < 'a > _Sq12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq11W < 'a > { w : & 'a mut W , } impl < 'a > _Sq11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq10W < 'a > { w : & 'a mut W , } impl < 'a > _Sq10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq9W < 'a > { w : & 'a mut W , } impl < 'a > _Sq9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq8W < 'a > { w : & 'a mut W , } impl < 'a > _Sq8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq7W < 'a > { w : & 'a mut W , } impl < 'a > _Sq7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:29 - 12th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq12 ( & self ) -> Sq12R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq12R { bits } } # [ doc = "Bits 20:24 - 11th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq11 ( & self ) -> Sq11R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq11R { bits } } # [ doc = "Bits 15:19 - 10th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq10 ( & self ) -> Sq10R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq10R { bits } } # [ doc = "Bits 10:14 - 9th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq9 ( & self ) -> Sq9R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq9R { bits } } # [ doc = "Bits 5:9 - 8th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq8 ( & self ) -> Sq8R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq8R { bits } } # [ doc = "Bits 0:4 - 7th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq7 ( & self ) -> Sq7R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq7R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:29 - 12th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq12 ( & mut self ) -> _Sq12W { _Sq12W { w : self } } # [ doc = "Bits 20:24 - 11th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq11 ( & mut self ) -> _Sq11W { _Sq11W { w : self } } # [ doc = "Bits 15:19 - 10th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq10 ( & mut self ) -> _Sq10W { _Sq10W { w : self } } # [ doc = "Bits 10:14 - 9th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq9 ( & mut self ) -> _Sq9W { _Sq9W { w : self } } # [ doc = "Bits 5:9 - 8th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq8 ( & mut self ) -> _Sq8W { _Sq8W { w : self } } # [ doc = "Bits 0:4 - 7th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq7 ( & mut self ) -> _Sq7W { _Sq7W { w : self } } } } # [ doc = "regular sequence register 3" ] pub struct Sqr3 { register : VolatileCell < u32 > } # [ doc = "regular sequence register 3" ] pub mod sqr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sqr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Sq6R { bits : u8 , } impl Sq6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq5R { bits : u8 , } impl Sq5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq4R { bits : u8 , } impl Sq4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq3R { bits : u8 , } impl Sq3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq2R { bits : u8 , } impl Sq2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sq1R { bits : u8 , } impl Sq1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Sq6W < 'a > { w : & 'a mut W , } impl < 'a > _Sq6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq5W < 'a > { w : & 'a mut W , } impl < 'a > _Sq5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq4W < 'a > { w : & 'a mut W , } impl < 'a > _Sq4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq3W < 'a > { w : & 'a mut W , } impl < 'a > _Sq3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq2W < 'a > { w : & 'a mut W , } impl < 'a > _Sq2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sq1W < 'a > { w : & 'a mut W , } impl < 'a > _Sq1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 25:29 - 6th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq6 ( & self ) -> Sq6R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq6R { bits } } # [ doc = "Bits 20:24 - 5th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq5 ( & self ) -> Sq5R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq5R { bits } } # [ doc = "Bits 15:19 - 4th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq4 ( & self ) -> Sq4R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq4R { bits } } # [ doc = "Bits 10:14 - 3rd conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq3 ( & self ) -> Sq3R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq3R { bits } } # [ doc = "Bits 5:9 - 2nd conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq2 ( & self ) -> Sq2R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq2R { bits } } # [ doc = "Bits 0:4 - 1st conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq1 ( & self ) -> Sq1R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sq1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 25:29 - 6th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq6 ( & mut self ) -> _Sq6W { _Sq6W { w : self } } # [ doc = "Bits 20:24 - 5th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq5 ( & mut self ) -> _Sq5W { _Sq5W { w : self } } # [ doc = "Bits 15:19 - 4th conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq4 ( & mut self ) -> _Sq4W { _Sq4W { w : self } } # [ doc = "Bits 10:14 - 3rd conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq3 ( & mut self ) -> _Sq3W { _Sq3W { w : self } } # [ doc = "Bits 5:9 - 2nd conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq2 ( & mut self ) -> _Sq2W { _Sq2W { w : self } } # [ doc = "Bits 0:4 - 1st conversion in regular sequence" ] # [ inline ( always ) ] pub fn sq1 ( & mut self ) -> _Sq1W { _Sq1W { w : self } } } } # [ doc = "injected sequence register" ] pub struct Jsqr { register : VolatileCell < u32 > } # [ doc = "injected sequence register" ] pub mod jsqr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Jsqr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct JlR { bits : u8 , } impl JlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jsq4R { bits : u8 , } impl Jsq4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jsq3R { bits : u8 , } impl Jsq3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jsq2R { bits : u8 , } impl Jsq2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jsq1R { bits : u8 , } impl Jsq1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _JlW < 'a > { w : & 'a mut W , } impl < 'a > _JlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Jsq4W < 'a > { w : & 'a mut W , } impl < 'a > _Jsq4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Jsq3W < 'a > { w : & 'a mut W , } impl < 'a > _Jsq3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Jsq2W < 'a > { w : & 'a mut W , } impl < 'a > _Jsq2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Jsq1W < 'a > { w : & 'a mut W , } impl < 'a > _Jsq1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 20:21 - Injected sequence length" ] # [ inline ( always ) ] pub fn jl ( & self ) -> JlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JlR { bits } } # [ doc = "Bits 15:19 - 4th conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq4 ( & self ) -> Jsq4R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jsq4R { bits } } # [ doc = "Bits 10:14 - 3rd conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq3 ( & self ) -> Jsq3R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jsq3R { bits } } # [ doc = "Bits 5:9 - 2nd conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq2 ( & self ) -> Jsq2R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jsq2R { bits } } # [ doc = "Bits 0:4 - 1st conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq1 ( & self ) -> Jsq1R { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jsq1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 20:21 - Injected sequence length" ] # [ inline ( always ) ] pub fn jl ( & mut self ) -> _JlW { _JlW { w : self } } # [ doc = "Bits 15:19 - 4th conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq4 ( & mut self ) -> _Jsq4W { _Jsq4W { w : self } } # [ doc = "Bits 10:14 - 3rd conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq3 ( & mut self ) -> _Jsq3W { _Jsq3W { w : self } } # [ doc = "Bits 5:9 - 2nd conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq2 ( & mut self ) -> _Jsq2W { _Jsq2W { w : self } } # [ doc = "Bits 0:4 - 1st conversion in injected sequence" ] # [ inline ( always ) ] pub fn jsq1 ( & mut self ) -> _Jsq1W { _Jsq1W { w : self } } } } # [ doc = "injected data register x" ] pub struct Jdr1 { register : VolatileCell < u32 > } # [ doc = "injected data register x" ] pub mod jdr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Jdr1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct JdataR { bits : u16 , } impl JdataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Injected data" ] # [ inline ( always ) ] pub fn jdata ( & self ) -> JdataR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; JdataR { bits } } } } # [ doc = "injected data register x" ] pub struct Jdr2 { register : VolatileCell < u32 > } # [ doc = "injected data register x" ] pub mod jdr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Jdr2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct JdataR { bits : u16 , } impl JdataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Injected data" ] # [ inline ( always ) ] pub fn jdata ( & self ) -> JdataR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; JdataR { bits } } } } # [ doc = "injected data register x" ] pub struct Jdr3 { register : VolatileCell < u32 > } # [ doc = "injected data register x" ] pub mod jdr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Jdr3 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct JdataR { bits : u16 , } impl JdataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Injected data" ] # [ inline ( always ) ] pub fn jdata ( & self ) -> JdataR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; JdataR { bits } } } } # [ doc = "injected data register x" ] pub struct Jdr4 { register : VolatileCell < u32 > } # [ doc = "injected data register x" ] pub mod jdr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Jdr4 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct JdataR { bits : u16 , } impl JdataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Injected data" ] # [ inline ( always ) ] pub fn jdata ( & self ) -> JdataR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; JdataR { bits } } } } # [ doc = "regular data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "regular data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct DataR { bits : u16 , } impl DataR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Regular data" ] # [ inline ( always ) ] pub fn data ( & self ) -> DataR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DataR { bits } } } } } # [ doc = "Analog-to-digital converter" ] pub struct Adc1 { register_block : adc1 :: RegisterBlock } impl Deref for Adc1 { type Target = adc1 :: RegisterBlock ; fn deref ( & self ) -> & adc1 :: RegisterBlock { & self . register_block } } # [ doc = "ADC2" ] pub const ADC2 : Peripheral < Adc2 > = unsafe { Peripheral :: new ( 1073815808 ) } ; # [ doc = r" Register block" ] pub struct Adc2 { register_block : adc1 :: RegisterBlock } impl Deref for Adc2 { type Target = adc1 :: RegisterBlock ; fn deref ( & self ) -> & adc1 :: RegisterBlock { & self . register_block } } # [ doc = "ADC3" ] pub const ADC3 : Peripheral < Adc3 > = unsafe { Peripheral :: new ( 1073816064 ) } ; # [ doc = r" Register block" ] pub struct Adc3 { register_block : adc1 :: RegisterBlock } impl Deref for Adc3 { type Target = adc1 :: RegisterBlock ; fn deref ( & self ) -> & adc1 :: RegisterBlock { & self . register_block } } # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub const USART6 : Peripheral < Usart6 > = unsafe { Peripheral :: new ( 1073812480 ) } ; # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub mod usart6 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Status register" ] pub sr : Sr , # [ doc = "0x04 - Data register" ] pub dr : Dr , # [ doc = "0x08 - Baud rate register" ] pub brr : Brr , # [ doc = "0x0c - Control register 1" ] pub cr1 : Cr1 , # [ doc = "0x10 - Control register 2" ] pub cr2 : Cr2 , # [ doc = "0x14 - Control register 3" ] pub cr3 : Cr3 , # [ doc = "0x18 - Guard time and prescaler register" ] pub gtpr : Gtpr , } # [ doc = "Status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "Status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = "Possible values of the field `CTS`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum CtsR { # [ doc = "0: No change occurred on the nCTS status line" ] NoChange , # [ doc = "1: A change occurred on the nCTS status line" ] Change } impl CtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { CtsR :: NoChange => 0 , CtsR :: Change => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> CtsR { match bits { 0 => CtsR :: NoChange , 1 => CtsR :: Change , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NoChange`" ] # [ inline ( always ) ] pub fn is_no_change ( & self ) -> bool { * self == CtsR :: NoChange } # [ doc = "Checks if the value of the field is `Change`" ] # [ inline ( always ) ] pub fn is_change ( & self ) -> bool { * self == CtsR :: Change } } # [ doc = "Possible values of the field `LBD`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum LbdR { # [ doc = "0: LIN Break not detected" ] NotDetected , # [ doc = "1: LIN break detected" ] BreakDetected } impl LbdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { LbdR :: NotDetected => 0 , LbdR :: BreakDetected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> LbdR { match bits { 0 => LbdR :: NotDetected , 1 => LbdR :: BreakDetected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotDetected`" ] # [ inline ( always ) ] pub fn is_not_detected ( & self ) -> bool { * self == LbdR :: NotDetected } # [ doc = "Checks if the value of the field is `BreakDetected`" ] # [ inline ( always ) ] pub fn is_break_detected ( & self ) -> bool { * self == LbdR :: BreakDetected } } # [ doc = "Possible values of the field `TXE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum TxeR { # [ doc = "0: Data is not transferred to the shift register" ] NotDetected , # [ doc = "1: Data is transferred to the shift register" ] BreakDetected } impl TxeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { TxeR :: NotDetected => 0 , TxeR :: BreakDetected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> TxeR { match bits { 0 => TxeR :: NotDetected , 1 => TxeR :: BreakDetected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotDetected`" ] # [ inline ( always ) ] pub fn is_not_detected ( & self ) -> bool { * self == TxeR :: NotDetected } # [ doc = "Checks if the value of the field is `BreakDetected`" ] # [ inline ( always ) ] pub fn is_break_detected ( & self ) -> bool { * self == TxeR :: BreakDetected } } # [ doc = "Possible values of the field `TC`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum TcR { # [ doc = "0: Transmission is not complete" ] NotComplete , # [ doc = "1: Transmission is complete" ] Complete } impl TcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { TcR :: NotComplete => 0 , TcR :: Complete => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> TcR { match bits { 0 => TcR :: NotComplete , 1 => TcR :: Complete , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotComplete`" ] # [ inline ( always ) ] pub fn is_not_complete ( & self ) -> bool { * self == TcR :: NotComplete } # [ doc = "Checks if the value of the field is `Complete`" ] # [ inline ( always ) ] pub fn is_complete ( & self ) -> bool { * self == TcR :: Complete } } # [ doc = "Possible values of the field `RXNE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum RxneR { # [ doc = "0: Data is not received" ] NotReceived , # [ doc = "1: Received data is ready to be read" ] DataReady } impl RxneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { RxneR :: NotReceived => 0 , RxneR :: DataReady => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> RxneR { match bits { 0 => RxneR :: NotReceived , 1 => RxneR :: DataReady , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotReceived`" ] # [ inline ( always ) ] pub fn is_not_received ( & self ) -> bool { * self == RxneR :: NotReceived } # [ doc = "Checks if the value of the field is `DataReady`" ] # [ inline ( always ) ] pub fn is_data_ready ( & self ) -> bool { * self == RxneR :: DataReady } } # [ doc = "Possible values of the field `IDLE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum IdleR { # [ doc = "0: No Idle Line is detected" ] NotDetected , # [ doc = "1: Idle Line is detected" ] Detected } impl IdleR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { IdleR :: NotDetected => 0 , IdleR :: Detected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> IdleR { match bits { 0 => IdleR :: NotDetected , 1 => IdleR :: Detected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotDetected`" ] # [ inline ( always ) ] pub fn is_not_detected ( & self ) -> bool { * self == IdleR :: NotDetected } # [ doc = "Checks if the value of the field is `Detected`" ] # [ inline ( always ) ] pub fn is_detected ( & self ) -> bool { * self == IdleR :: Detected } } # [ doc = "Possible values of the field `ORE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum OreR { # [ doc = "0: No Overrun error" ] NoOverrun , # [ doc = "1: Overrun error is detected" ] OverrunDetected } impl OreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { OreR :: NoOverrun => 0 , OreR :: OverrunDetected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> OreR { match bits { 0 => OreR :: NoOverrun , 1 => OreR :: OverrunDetected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NoOverrun`" ] # [ inline ( always ) ] pub fn is_no_overrun ( & self ) -> bool { * self == OreR :: NoOverrun } # [ doc = "Checks if the value of the field is `OverrunDetected`" ] # [ inline ( always ) ] pub fn is_overrun_detected ( & self ) -> bool { * self == OreR :: OverrunDetected } } # [ doc = "Possible values of the field `NF`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum NfR { # [ doc = "0: No noise is detected" ] NotDetected , # [ doc = "1: Noise is detected" ] NoiseDetected } impl NfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { NfR :: NotDetected => 0 , NfR :: NoiseDetected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> NfR { match bits { 0 => NfR :: NotDetected , 1 => NfR :: NoiseDetected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotDetected`" ] # [ inline ( always ) ] pub fn is_not_detected ( & self ) -> bool { * self == NfR :: NotDetected } # [ doc = "Checks if the value of the field is `NoiseDetected`" ] # [ inline ( always ) ] pub fn is_noise_detected ( & self ) -> bool { * self == NfR :: NoiseDetected } } # [ doc = "Possible values of the field `FE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum FeR { # [ doc = "0: No Framing error is detected" ] NotDetected , # [ doc = "1: Framing error or break character is detected" ] FramingErrorDetected } impl FeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { FeR :: NotDetected => 0 , FeR :: FramingErrorDetected => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> FeR { match bits { 0 => FeR :: NotDetected , 1 => FeR :: FramingErrorDetected , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NotDetected`" ] # [ inline ( always ) ] pub fn is_not_detected ( & self ) -> bool { * self == FeR :: NotDetected } # [ doc = "Checks if the value of the field is `FramingErrorDetected`" ] # [ inline ( always ) ] pub fn is_framing_error_detected ( & self ) -> bool { * self == FeR :: FramingErrorDetected } } # [ doc = "Possible values of the field `PE`" ] # [ derive ( Clone , Copy , Debug , PartialEq ) ] pub enum PeR { # [ doc = "0: No parity error" ] NoParityError , # [ doc = "1: Parity error" ] ParityError } impl PeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { match * self { PeR :: NoParityError => 0 , PeR :: ParityError => 1 } } # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _from ( bits : u8 ) -> PeR { match bits { 0 => PeR :: NoParityError , 1 => PeR :: ParityError , _ => unreachable ! ( ) , } } # [ doc = "Checks if the value of the field is `NoParityError`" ] # [ inline ( always ) ] pub fn is_no_parity_error ( & self ) -> bool { * self == PeR :: NoParityError } # [ doc = "Checks if the value of the field is `ParityError`" ] # [ inline ( always ) ] pub fn is_parity_error ( & self ) -> bool { * self == PeR :: ParityError } } # [ doc = "Values that can be written to the field `CTS`" ] pub enum CtsW { # [ doc = "0: No change occurred on the nCTS status line" ] NoChange , # [ doc = "1: A change occurred on the nCTS status line" ] Change } impl CtsW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { CtsW :: NoChange => 0 , CtsW :: Change => 1 } } } # [ doc = r" Proxy" ] pub struct _CtsW < 'a > { w : & 'a mut W , } impl < 'a > _CtsW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : CtsW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: No change occurred on the nCTS status line" ] # [ inline ( always ) ] pub fn no_change ( self ) -> & 'a mut W { self . variant ( CtsW :: NoChange ) } # [ doc = "1: A change occurred on the nCTS status line" ] # [ inline ( always ) ] pub fn change ( self ) -> & 'a mut W { self . variant ( CtsW :: Change ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `LBD`" ] pub enum LbdW { # [ doc = "0: LIN Break not detected" ] NotDetected , # [ doc = "1: LIN break detected" ] BreakDetected } impl LbdW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { LbdW :: NotDetected => 0 , LbdW :: BreakDetected => 1 } } } # [ doc = r" Proxy" ] pub struct _LbdW < 'a > { w : & 'a mut W , } impl < 'a > _LbdW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : LbdW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: LIN Break not detected" ] # [ inline ( always ) ] pub fn not_detected ( self ) -> & 'a mut W { self . variant ( LbdW :: NotDetected ) } # [ doc = "1: LIN break detected" ] # [ inline ( always ) ] pub fn break_detected ( self ) -> & 'a mut W { self . variant ( LbdW :: BreakDetected ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `TC`" ] pub enum TcW { # [ doc = "0: Transmission is not complete" ] NotComplete , # [ doc = "1: Transmission is complete" ] Complete } impl TcW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { TcW :: NotComplete => 0 , TcW :: Complete => 1 } } } # [ doc = r" Proxy" ] pub struct _TcW < 'a > { w : & 'a mut W , } impl < 'a > _TcW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : TcW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Transmission is not complete" ] # [ inline ( always ) ] pub fn not_complete ( self ) -> & 'a mut W { self . variant ( TcW :: NotComplete ) } # [ doc = "1: Transmission is complete" ] # [ inline ( always ) ] pub fn complete ( self ) -> & 'a mut W { self . variant ( TcW :: Complete ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = "Values that can be written to the field `RXNE`" ] pub enum RxneW { # [ doc = "0: Data is not received" ] NotReceived , # [ doc = "1: Received data is ready to be read" ] DataReady } impl RxneW { # [ allow ( missing_docs ) ] # [ doc ( hidden ) ] # [ inline ( always ) ] pub fn _bits ( & self ) -> u8 { match * self { RxneW :: NotReceived => 0 , RxneW :: DataReady => 1 } } } # [ doc = r" Proxy" ] pub struct _RxneW < 'a > { w : & 'a mut W , } impl < 'a > _RxneW < 'a > { # [ doc = r" Writes `variant` to the field" ] # [ inline ( always ) ] pub fn variant ( self , variant : RxneW ) -> & 'a mut W { { self . bits ( variant . _bits ( ) ) } } # [ doc = "0: Data is not received" ] # [ inline ( always ) ] pub fn not_received ( self ) -> & 'a mut W { self . variant ( RxneW :: NotReceived ) } # [ doc = "1: Received data is ready to be read" ] # [ inline ( always ) ] pub fn data_ready ( self ) -> & 'a mut W { self . variant ( RxneW :: DataReady ) } # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - CTS flag" ] # [ inline ( always ) ] pub fn cts ( & self ) -> CtsR { CtsR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 8 - LIN break detection flag" ] # [ inline ( always ) ] pub fn lbd ( & self ) -> LbdR { LbdR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 7 - Transmit data register empty" ] # [ inline ( always ) ] pub fn txe ( & self ) -> TxeR { TxeR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 6 - Transmission complete" ] # [ inline ( always ) ] pub fn tc ( & self ) -> TcR { TcR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 5 - Read data register not empty" ] # [ inline ( always ) ] pub fn rxne ( & self ) -> RxneR { RxneR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 4 - IDLE line detected" ] # [ inline ( always ) ] pub fn idle ( & self ) -> IdleR { IdleR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 3 - Overrun error" ] # [ inline ( always ) ] pub fn ore ( & self ) -> OreR { OreR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 2 - Noise detected flag" ] # [ inline ( always ) ] pub fn nf ( & self ) -> NfR { NfR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 1 - Framing error" ] # [ inline ( always ) ] pub fn fe ( & self ) -> FeR { FeR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } # [ doc = "Bit 0 - Parity error" ] # [ inline ( always ) ] pub fn pe ( & self ) -> PeR { PeR :: _from ( { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ) } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12582912 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - CTS flag" ] # [ inline ( always ) ] pub fn cts ( & mut self ) -> _CtsW { _CtsW { w : self } } # [ doc = "Bit 8 - LIN break detection flag" ] # [ inline ( always ) ] pub fn lbd ( & mut self ) -> _LbdW { _LbdW { w : self } } # [ doc = "Bit 6 - Transmission complete" ] # [ inline ( always ) ] pub fn tc ( & mut self ) -> _TcW { _TcW { w : self } } # [ doc = "Bit 5 - Read data register not empty" ] # [ inline ( always ) ] pub fn rxne ( & mut self ) -> _RxneW { _RxneW { w : self } } } } # [ doc = "Data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "Data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DrR { bits : u16 , } impl DrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DrW < 'a > { w : & 'a mut W , } impl < 'a > _DrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:8 - Data value" ] # [ inline ( always ) ] pub fn dr ( & self ) -> DrR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:8 - Data value" ] # [ inline ( always ) ] pub fn dr ( & mut self ) -> _DrW { _DrW { w : self } } } } # [ doc = "Baud rate register" ] pub struct Brr { register : VolatileCell < u32 > } # [ doc = "Baud rate register" ] pub mod brr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Brr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DivMantissaR { bits : u16 , } impl DivMantissaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DivFractionR { bits : u8 , } impl DivFractionR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DivMantissaW < 'a > { w : & 'a mut W , } impl < 'a > _DivMantissaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DivFractionW < 'a > { w : & 'a mut W , } impl < 'a > _DivFractionW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:15 - mantissa of USARTDIV" ] # [ inline ( always ) ] pub fn div_mantissa ( & self ) -> DivMantissaR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DivMantissaR { bits } } # [ doc = "Bits 0:3 - fraction of USARTDIV" ] # [ inline ( always ) ] pub fn div_fraction ( & self ) -> DivFractionR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DivFractionR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:15 - mantissa of USARTDIV" ] # [ inline ( always ) ] pub fn div_mantissa ( & mut self ) -> _DivMantissaW { _DivMantissaW { w : self } } # [ doc = "Bits 0:3 - fraction of USARTDIV" ] # [ inline ( always ) ] pub fn div_fraction ( & mut self ) -> _DivFractionW { _DivFractionW { w : self } } } } # [ doc = "Control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "Control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Over8R { bits : u8 , } impl Over8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UeR { bits : u8 , } impl UeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MR { bits : u8 , } impl MR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WakeR { bits : u8 , } impl WakeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PceR { bits : u8 , } impl PceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsR { bits : u8 , } impl PsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PeieR { bits : u8 , } impl PeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxeieR { bits : u8 , } impl TxeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxneieR { bits : u8 , } impl RxneieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdleieR { bits : u8 , } impl IdleieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeR { bits : u8 , } impl TeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ReR { bits : u8 , } impl ReR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwuR { bits : u8 , } impl RwuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SbkR { bits : u8 , } impl SbkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Over8W < 'a > { w : & 'a mut W , } impl < 'a > _Over8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UeW < 'a > { w : & 'a mut W , } impl < 'a > _UeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MW < 'a > { w : & 'a mut W , } impl < 'a > _MW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WakeW < 'a > { w : & 'a mut W , } impl < 'a > _WakeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PceW < 'a > { w : & 'a mut W , } impl < 'a > _PceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsW < 'a > { w : & 'a mut W , } impl < 'a > _PsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PeieW < 'a > { w : & 'a mut W , } impl < 'a > _PeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxeieW < 'a > { w : & 'a mut W , } impl < 'a > _TxeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxneieW < 'a > { w : & 'a mut W , } impl < 'a > _RxneieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IdleieW < 'a > { w : & 'a mut W , } impl < 'a > _IdleieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeW < 'a > { w : & 'a mut W , } impl < 'a > _TeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ReW < 'a > { w : & 'a mut W , } impl < 'a > _ReW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwuW < 'a > { w : & 'a mut W , } impl < 'a > _RwuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SbkW < 'a > { w : & 'a mut W , } impl < 'a > _SbkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Oversampling mode" ] # [ inline ( always ) ] pub fn over8 ( & self ) -> Over8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Over8R { bits } } # [ doc = "Bit 13 - USART enable" ] # [ inline ( always ) ] pub fn ue ( & self ) -> UeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UeR { bits } } # [ doc = "Bit 12 - Word length" ] # [ inline ( always ) ] pub fn m ( & self ) -> MR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MR { bits } } # [ doc = "Bit 11 - Wakeup method" ] # [ inline ( always ) ] pub fn wake ( & self ) -> WakeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WakeR { bits } } # [ doc = "Bit 10 - Parity control enable" ] # [ inline ( always ) ] pub fn pce ( & self ) -> PceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PceR { bits } } # [ doc = "Bit 9 - Parity selection" ] # [ inline ( always ) ] pub fn ps ( & self ) -> PsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsR { bits } } # [ doc = "Bit 8 - PE interrupt enable" ] # [ inline ( always ) ] pub fn peie ( & self ) -> PeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PeieR { bits } } # [ doc = "Bit 7 - TXE interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & self ) -> TxeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxeieR { bits } } # [ doc = "Bit 6 - Transmission complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 5 - RXNE interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & self ) -> RxneieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxneieR { bits } } # [ doc = "Bit 4 - IDLE interrupt enable" ] # [ inline ( always ) ] pub fn idleie ( & self ) -> IdleieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdleieR { bits } } # [ doc = "Bit 3 - Transmitter enable" ] # [ inline ( always ) ] pub fn te ( & self ) -> TeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeR { bits } } # [ doc = "Bit 2 - Receiver enable" ] # [ inline ( always ) ] pub fn re ( & self ) -> ReR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ReR { bits } } # [ doc = "Bit 1 - Receiver wakeup" ] # [ inline ( always ) ] pub fn rwu ( & self ) -> RwuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwuR { bits } } # [ doc = "Bit 0 - Send break" ] # [ inline ( always ) ] pub fn sbk ( & self ) -> SbkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SbkR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Oversampling mode" ] # [ inline ( always ) ] pub fn over8 ( & mut self ) -> _Over8W { _Over8W { w : self } } # [ doc = "Bit 13 - USART enable" ] # [ inline ( always ) ] pub fn ue ( & mut self ) -> _UeW { _UeW { w : self } } # [ doc = "Bit 12 - Word length" ] # [ inline ( always ) ] pub fn m ( & mut self ) -> _MW { _MW { w : self } } # [ doc = "Bit 11 - Wakeup method" ] # [ inline ( always ) ] pub fn wake ( & mut self ) -> _WakeW { _WakeW { w : self } } # [ doc = "Bit 10 - Parity control enable" ] # [ inline ( always ) ] pub fn pce ( & mut self ) -> _PceW { _PceW { w : self } } # [ doc = "Bit 9 - Parity selection" ] # [ inline ( always ) ] pub fn ps ( & mut self ) -> _PsW { _PsW { w : self } } # [ doc = "Bit 8 - PE interrupt enable" ] # [ inline ( always ) ] pub fn peie ( & mut self ) -> _PeieW { _PeieW { w : self } } # [ doc = "Bit 7 - TXE interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & mut self ) -> _TxeieW { _TxeieW { w : self } } # [ doc = "Bit 6 - Transmission complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 5 - RXNE interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & mut self ) -> _RxneieW { _RxneieW { w : self } } # [ doc = "Bit 4 - IDLE interrupt enable" ] # [ inline ( always ) ] pub fn idleie ( & mut self ) -> _IdleieW { _IdleieW { w : self } } # [ doc = "Bit 3 - Transmitter enable" ] # [ inline ( always ) ] pub fn te ( & mut self ) -> _TeW { _TeW { w : self } } # [ doc = "Bit 2 - Receiver enable" ] # [ inline ( always ) ] pub fn re ( & mut self ) -> _ReW { _ReW { w : self } } # [ doc = "Bit 1 - Receiver wakeup" ] # [ inline ( always ) ] pub fn rwu ( & mut self ) -> _RwuW { _RwuW { w : self } } # [ doc = "Bit 0 - Send break" ] # [ inline ( always ) ] pub fn sbk ( & mut self ) -> _SbkW { _SbkW { w : self } } } } # [ doc = "Control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "Control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LinenR { bits : u8 , } impl LinenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StopR { bits : u8 , } impl StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ClkenR { bits : u8 , } impl ClkenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CpolR { bits : u8 , } impl CpolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CphaR { bits : u8 , } impl CphaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbclR { bits : u8 , } impl LbclR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbdieR { bits : u8 , } impl LbdieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbdlR { bits : u8 , } impl LbdlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddR { bits : u8 , } impl AddR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LinenW < 'a > { w : & 'a mut W , } impl < 'a > _LinenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StopW < 'a > { w : & 'a mut W , } impl < 'a > _StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ClkenW < 'a > { w : & 'a mut W , } impl < 'a > _ClkenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CpolW < 'a > { w : & 'a mut W , } impl < 'a > _CpolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CphaW < 'a > { w : & 'a mut W , } impl < 'a > _CphaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbclW < 'a > { w : & 'a mut W , } impl < 'a > _LbclW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbdieW < 'a > { w : & 'a mut W , } impl < 'a > _LbdieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbdlW < 'a > { w : & 'a mut W , } impl < 'a > _LbdlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddW < 'a > { w : & 'a mut W , } impl < 'a > _AddW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - LIN mode enable" ] # [ inline ( always ) ] pub fn linen ( & self ) -> LinenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LinenR { bits } } # [ doc = "Bits 12:13 - STOP bits" ] # [ inline ( always ) ] pub fn stop ( & self ) -> StopR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StopR { bits } } # [ doc = "Bit 11 - Clock enable" ] # [ inline ( always ) ] pub fn clken ( & self ) -> ClkenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ClkenR { bits } } # [ doc = "Bit 10 - Clock polarity" ] # [ inline ( always ) ] pub fn cpol ( & self ) -> CpolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CpolR { bits } } # [ doc = "Bit 9 - Clock phase" ] # [ inline ( always ) ] pub fn cpha ( & self ) -> CphaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CphaR { bits } } # [ doc = "Bit 8 - Last bit clock pulse" ] # [ inline ( always ) ] pub fn lbcl ( & self ) -> LbclR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbclR { bits } } # [ doc = "Bit 6 - LIN break detection interrupt enable" ] # [ inline ( always ) ] pub fn lbdie ( & self ) -> LbdieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbdieR { bits } } # [ doc = "Bit 5 - lin break detection length" ] # [ inline ( always ) ] pub fn lbdl ( & self ) -> LbdlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbdlR { bits } } # [ doc = "Bits 0:3 - Address of the USART node" ] # [ inline ( always ) ] pub fn add ( & self ) -> AddR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - LIN mode enable" ] # [ inline ( always ) ] pub fn linen ( & mut self ) -> _LinenW { _LinenW { w : self } } # [ doc = "Bits 12:13 - STOP bits" ] # [ inline ( always ) ] pub fn stop ( & mut self ) -> _StopW { _StopW { w : self } } # [ doc = "Bit 11 - Clock enable" ] # [ inline ( always ) ] pub fn clken ( & mut self ) -> _ClkenW { _ClkenW { w : self } } # [ doc = "Bit 10 - Clock polarity" ] # [ inline ( always ) ] pub fn cpol ( & mut self ) -> _CpolW { _CpolW { w : self } } # [ doc = "Bit 9 - Clock phase" ] # [ inline ( always ) ] pub fn cpha ( & mut self ) -> _CphaW { _CphaW { w : self } } # [ doc = "Bit 8 - Last bit clock pulse" ] # [ inline ( always ) ] pub fn lbcl ( & mut self ) -> _LbclW { _LbclW { w : self } } # [ doc = "Bit 6 - LIN break detection interrupt enable" ] # [ inline ( always ) ] pub fn lbdie ( & mut self ) -> _LbdieW { _LbdieW { w : self } } # [ doc = "Bit 5 - lin break detection length" ] # [ inline ( always ) ] pub fn lbdl ( & mut self ) -> _LbdlW { _LbdlW { w : self } } # [ doc = "Bits 0:3 - Address of the USART node" ] # [ inline ( always ) ] pub fn add ( & mut self ) -> _AddW { _AddW { w : self } } } } # [ doc = "Control register 3" ] pub struct Cr3 { register : VolatileCell < u32 > } # [ doc = "Control register 3" ] pub mod cr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OnebitR { bits : u8 , } impl OnebitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtsieR { bits : u8 , } impl CtsieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtseR { bits : u8 , } impl CtseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtseR { bits : u8 , } impl RtseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmatR { bits : u8 , } impl DmatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmarR { bits : u8 , } impl DmarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ScenR { bits : u8 , } impl ScenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NackR { bits : u8 , } impl NackR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HdselR { bits : u8 , } impl HdselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrlpR { bits : u8 , } impl IrlpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrenR { bits : u8 , } impl IrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EieR { bits : u8 , } impl EieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OnebitW < 'a > { w : & 'a mut W , } impl < 'a > _OnebitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtsieW < 'a > { w : & 'a mut W , } impl < 'a > _CtsieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtseW < 'a > { w : & 'a mut W , } impl < 'a > _CtseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtseW < 'a > { w : & 'a mut W , } impl < 'a > _RtseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmatW < 'a > { w : & 'a mut W , } impl < 'a > _DmatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmarW < 'a > { w : & 'a mut W , } impl < 'a > _DmarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ScenW < 'a > { w : & 'a mut W , } impl < 'a > _ScenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NackW < 'a > { w : & 'a mut W , } impl < 'a > _NackW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HdselW < 'a > { w : & 'a mut W , } impl < 'a > _HdselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrlpW < 'a > { w : & 'a mut W , } impl < 'a > _IrlpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrenW < 'a > { w : & 'a mut W , } impl < 'a > _IrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EieW < 'a > { w : & 'a mut W , } impl < 'a > _EieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 11 - One sample bit method enable" ] # [ inline ( always ) ] pub fn onebit ( & self ) -> OnebitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OnebitR { bits } } # [ doc = "Bit 10 - CTS interrupt enable" ] # [ inline ( always ) ] pub fn ctsie ( & self ) -> CtsieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtsieR { bits } } # [ doc = "Bit 9 - CTS enable" ] # [ inline ( always ) ] pub fn ctse ( & self ) -> CtseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtseR { bits } } # [ doc = "Bit 8 - RTS enable" ] # [ inline ( always ) ] pub fn rtse ( & self ) -> RtseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtseR { bits } } # [ doc = "Bit 7 - DMA enable transmitter" ] # [ inline ( always ) ] pub fn dmat ( & self ) -> DmatR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmatR { bits } } # [ doc = "Bit 6 - DMA enable receiver" ] # [ inline ( always ) ] pub fn dmar ( & self ) -> DmarR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmarR { bits } } # [ doc = "Bit 5 - Smartcard mode enable" ] # [ inline ( always ) ] pub fn scen ( & self ) -> ScenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ScenR { bits } } # [ doc = "Bit 4 - Smartcard NACK enable" ] # [ inline ( always ) ] pub fn nack ( & self ) -> NackR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NackR { bits } } # [ doc = "Bit 3 - Half-duplex selection" ] # [ inline ( always ) ] pub fn hdsel ( & self ) -> HdselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HdselR { bits } } # [ doc = "Bit 2 - IrDA low-power" ] # [ inline ( always ) ] pub fn irlp ( & self ) -> IrlpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrlpR { bits } } # [ doc = "Bit 1 - IrDA mode enable" ] # [ inline ( always ) ] pub fn iren ( & self ) -> IrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrenR { bits } } # [ doc = "Bit 0 - Error interrupt enable" ] # [ inline ( always ) ] pub fn eie ( & self ) -> EieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 11 - One sample bit method enable" ] # [ inline ( always ) ] pub fn onebit ( & mut self ) -> _OnebitW { _OnebitW { w : self } } # [ doc = "Bit 10 - CTS interrupt enable" ] # [ inline ( always ) ] pub fn ctsie ( & mut self ) -> _CtsieW { _CtsieW { w : self } } # [ doc = "Bit 9 - CTS enable" ] # [ inline ( always ) ] pub fn ctse ( & mut self ) -> _CtseW { _CtseW { w : self } } # [ doc = "Bit 8 - RTS enable" ] # [ inline ( always ) ] pub fn rtse ( & mut self ) -> _RtseW { _RtseW { w : self } } # [ doc = "Bit 7 - DMA enable transmitter" ] # [ inline ( always ) ] pub fn dmat ( & mut self ) -> _DmatW { _DmatW { w : self } } # [ doc = "Bit 6 - DMA enable receiver" ] # [ inline ( always ) ] pub fn dmar ( & mut self ) -> _DmarW { _DmarW { w : self } } # [ doc = "Bit 5 - Smartcard mode enable" ] # [ inline ( always ) ] pub fn scen ( & mut self ) -> _ScenW { _ScenW { w : self } } # [ doc = "Bit 4 - Smartcard NACK enable" ] # [ inline ( always ) ] pub fn nack ( & mut self ) -> _NackW { _NackW { w : self } } # [ doc = "Bit 3 - Half-duplex selection" ] # [ inline ( always ) ] pub fn hdsel ( & mut self ) -> _HdselW { _HdselW { w : self } } # [ doc = "Bit 2 - IrDA low-power" ] # [ inline ( always ) ] pub fn irlp ( & mut self ) -> _IrlpW { _IrlpW { w : self } } # [ doc = "Bit 1 - IrDA mode enable" ] # [ inline ( always ) ] pub fn iren ( & mut self ) -> _IrenW { _IrenW { w : self } } # [ doc = "Bit 0 - Error interrupt enable" ] # [ inline ( always ) ] pub fn eie ( & mut self ) -> _EieW { _EieW { w : self } } } } # [ doc = "Guard time and prescaler register" ] pub struct Gtpr { register : VolatileCell < u32 > } # [ doc = "Guard time and prescaler register" ] pub mod gtpr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Gtpr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct GtR { bits : u8 , } impl GtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u8 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _GtW < 'a > { w : & 'a mut W , } impl < 'a > _GtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:15 - Guard time value" ] # [ inline ( always ) ] pub fn gt ( & self ) -> GtR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GtR { bits } } # [ doc = "Bits 0:7 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:15 - Guard time value" ] # [ inline ( always ) ] pub fn gt ( & mut self ) -> _GtW { _GtW { w : self } } # [ doc = "Bits 0:7 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } } # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub struct Usart6 { register_block : usart6 :: RegisterBlock } impl Deref for Usart6 { type Target = usart6 :: RegisterBlock ; fn deref ( & self ) -> & usart6 :: RegisterBlock { & self . register_block } } # [ doc = "USART1" ] pub const USART1 : Peripheral < Usart1 > = unsafe { Peripheral :: new ( 1073811456 ) } ; # [ doc = r" Register block" ] pub struct Usart1 { register_block : usart6 :: RegisterBlock } impl Deref for Usart1 { type Target = usart6 :: RegisterBlock ; fn deref ( & self ) -> & usart6 :: RegisterBlock { & self . register_block } } # [ doc = "USART2" ] pub const USART2 : Peripheral < Usart2 > = unsafe { Peripheral :: new ( 1073759232 ) } ; # [ doc = r" Register block" ] pub struct Usart2 { register_block : usart6 :: RegisterBlock } impl Deref for Usart2 { type Target = usart6 :: RegisterBlock ; fn deref ( & self ) -> & usart6 :: RegisterBlock { & self . register_block } } # [ doc = "USART3" ] pub const USART3 : Peripheral < Usart3 > = unsafe { Peripheral :: new ( 1073760256 ) } ; # [ doc = r" Register block" ] pub struct Usart3 { register_block : usart6 :: RegisterBlock } impl Deref for Usart3 { type Target = usart6 :: RegisterBlock ; fn deref ( & self ) -> & usart6 :: RegisterBlock { & self . register_block } } # [ doc = "Digital-to-analog converter" ] pub const DAC : Peripheral < Dac > = unsafe { Peripheral :: new ( 1073771520 ) } ; # [ doc = "Digital-to-analog converter" ] pub mod dac { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register" ] pub cr : Cr , # [ doc = "0x04 - software trigger register" ] pub swtrigr : Swtrigr , # [ doc = "0x08 - channel1 12-bit right-aligned data holding register" ] pub dhr12r1 : Dhr12r1 , # [ doc = "0x0c - channel1 12-bit left aligned data holding register" ] pub dhr12l1 : Dhr12l1 , # [ doc = "0x10 - channel1 8-bit right aligned data holding register" ] pub dhr8r1 : Dhr8r1 , # [ doc = "0x14 - channel2 12-bit right aligned data holding register" ] pub dhr12r2 : Dhr12r2 , # [ doc = "0x18 - channel2 12-bit left aligned data holding register" ] pub dhr12l2 : Dhr12l2 , # [ doc = "0x1c - channel2 8-bit right-aligned data holding register" ] pub dhr8r2 : Dhr8r2 , # [ doc = "0x20 - Dual DAC 12-bit right-aligned data holding register" ] pub dhr12rd : Dhr12rd , # [ doc = "0x24 - DUAL DAC 12-bit left aligned data holding register" ] pub dhr12ld : Dhr12ld , # [ doc = "0x28 - DUAL DAC 8-bit right aligned data holding register" ] pub dhr8rd : Dhr8rd , # [ doc = "0x2c - channel1 data output register" ] pub dor1 : Dor1 , # [ doc = "0x30 - channel2 data output register" ] pub dor2 : Dor2 , # [ doc = "0x34 - status register" ] pub sr : Sr , } # [ doc = "control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dmaudrie2R { bits : u8 , } impl Dmaudrie2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmaen2R { bits : u8 , } impl Dmaen2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mamp2R { bits : u8 , } impl Mamp2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Wave2R { bits : u8 , } impl Wave2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tsel2R { bits : u8 , } impl Tsel2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ten2R { bits : u8 , } impl Ten2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Boff2R { bits : u8 , } impl Boff2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct En2R { bits : u8 , } impl En2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmaudrie1R { bits : u8 , } impl Dmaudrie1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmaen1R { bits : u8 , } impl Dmaen1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mamp1R { bits : u8 , } impl Mamp1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Wave1R { bits : u8 , } impl Wave1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tsel1R { bits : u8 , } impl Tsel1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ten1R { bits : u8 , } impl Ten1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Boff1R { bits : u8 , } impl Boff1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct En1R { bits : u8 , } impl En1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dmaudrie2W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaudrie2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dmaen2W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaen2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mamp2W < 'a > { w : & 'a mut W , } impl < 'a > _Mamp2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Wave2W < 'a > { w : & 'a mut W , } impl < 'a > _Wave2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tsel2W < 'a > { w : & 'a mut W , } impl < 'a > _Tsel2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ten2W < 'a > { w : & 'a mut W , } impl < 'a > _Ten2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Boff2W < 'a > { w : & 'a mut W , } impl < 'a > _Boff2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _En2W < 'a > { w : & 'a mut W , } impl < 'a > _En2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dmaudrie1W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaudrie1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dmaen1W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaen1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mamp1W < 'a > { w : & 'a mut W , } impl < 'a > _Mamp1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Wave1W < 'a > { w : & 'a mut W , } impl < 'a > _Wave1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tsel1W < 'a > { w : & 'a mut W , } impl < 'a > _Tsel1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ten1W < 'a > { w : & 'a mut W , } impl < 'a > _Ten1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Boff1W < 'a > { w : & 'a mut W , } impl < 'a > _Boff1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _En1W < 'a > { w : & 'a mut W , } impl < 'a > _En1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - DAC channel2 DMA underrun interrupt enable" ] # [ inline ( always ) ] pub fn dmaudrie2 ( & self ) -> Dmaudrie2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaudrie2R { bits } } # [ doc = "Bit 28 - DAC channel2 DMA enable" ] # [ inline ( always ) ] pub fn dmaen2 ( & self ) -> Dmaen2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaen2R { bits } } # [ doc = "Bits 24:27 - DAC channel2 mask/amplitude selector" ] # [ inline ( always ) ] pub fn mamp2 ( & self ) -> Mamp2R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mamp2R { bits } } # [ doc = "Bits 22:23 - DAC channel2 noise/triangle wave generation enable" ] # [ inline ( always ) ] pub fn wave2 ( & self ) -> Wave2R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Wave2R { bits } } # [ doc = "Bits 19:21 - DAC channel2 trigger selection" ] # [ inline ( always ) ] pub fn tsel2 ( & self ) -> Tsel2R { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tsel2R { bits } } # [ doc = "Bit 18 - DAC channel2 trigger enable" ] # [ inline ( always ) ] pub fn ten2 ( & self ) -> Ten2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ten2R { bits } } # [ doc = "Bit 17 - DAC channel2 output buffer disable" ] # [ inline ( always ) ] pub fn boff2 ( & self ) -> Boff2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Boff2R { bits } } # [ doc = "Bit 16 - DAC channel2 enable" ] # [ inline ( always ) ] pub fn en2 ( & self ) -> En2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; En2R { bits } } # [ doc = "Bit 13 - DAC channel1 DMA Underrun Interrupt enable" ] # [ inline ( always ) ] pub fn dmaudrie1 ( & self ) -> Dmaudrie1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaudrie1R { bits } } # [ doc = "Bit 12 - DAC channel1 DMA enable" ] # [ inline ( always ) ] pub fn dmaen1 ( & self ) -> Dmaen1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaen1R { bits } } # [ doc = "Bits 8:11 - DAC channel1 mask/amplitude selector" ] # [ inline ( always ) ] pub fn mamp1 ( & self ) -> Mamp1R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mamp1R { bits } } # [ doc = "Bits 6:7 - DAC channel1 noise/triangle wave generation enable" ] # [ inline ( always ) ] pub fn wave1 ( & self ) -> Wave1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Wave1R { bits } } # [ doc = "Bits 3:5 - DAC channel1 trigger selection" ] # [ inline ( always ) ] pub fn tsel1 ( & self ) -> Tsel1R { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tsel1R { bits } } # [ doc = "Bit 2 - DAC channel1 trigger enable" ] # [ inline ( always ) ] pub fn ten1 ( & self ) -> Ten1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ten1R { bits } } # [ doc = "Bit 1 - DAC channel1 output buffer disable" ] # [ inline ( always ) ] pub fn boff1 ( & self ) -> Boff1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Boff1R { bits } } # [ doc = "Bit 0 - DAC channel1 enable" ] # [ inline ( always ) ] pub fn en1 ( & self ) -> En1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; En1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - DAC channel2 DMA underrun interrupt enable" ] # [ inline ( always ) ] pub fn dmaudrie2 ( & mut self ) -> _Dmaudrie2W { _Dmaudrie2W { w : self } } # [ doc = "Bit 28 - DAC channel2 DMA enable" ] # [ inline ( always ) ] pub fn dmaen2 ( & mut self ) -> _Dmaen2W { _Dmaen2W { w : self } } # [ doc = "Bits 24:27 - DAC channel2 mask/amplitude selector" ] # [ inline ( always ) ] pub fn mamp2 ( & mut self ) -> _Mamp2W { _Mamp2W { w : self } } # [ doc = "Bits 22:23 - DAC channel2 noise/triangle wave generation enable" ] # [ inline ( always ) ] pub fn wave2 ( & mut self ) -> _Wave2W { _Wave2W { w : self } } # [ doc = "Bits 19:21 - DAC channel2 trigger selection" ] # [ inline ( always ) ] pub fn tsel2 ( & mut self ) -> _Tsel2W { _Tsel2W { w : self } } # [ doc = "Bit 18 - DAC channel2 trigger enable" ] # [ inline ( always ) ] pub fn ten2 ( & mut self ) -> _Ten2W { _Ten2W { w : self } } # [ doc = "Bit 17 - DAC channel2 output buffer disable" ] # [ inline ( always ) ] pub fn boff2 ( & mut self ) -> _Boff2W { _Boff2W { w : self } } # [ doc = "Bit 16 - DAC channel2 enable" ] # [ inline ( always ) ] pub fn en2 ( & mut self ) -> _En2W { _En2W { w : self } } # [ doc = "Bit 13 - DAC channel1 DMA Underrun Interrupt enable" ] # [ inline ( always ) ] pub fn dmaudrie1 ( & mut self ) -> _Dmaudrie1W { _Dmaudrie1W { w : self } } # [ doc = "Bit 12 - DAC channel1 DMA enable" ] # [ inline ( always ) ] pub fn dmaen1 ( & mut self ) -> _Dmaen1W { _Dmaen1W { w : self } } # [ doc = "Bits 8:11 - DAC channel1 mask/amplitude selector" ] # [ inline ( always ) ] pub fn mamp1 ( & mut self ) -> _Mamp1W { _Mamp1W { w : self } } # [ doc = "Bits 6:7 - DAC channel1 noise/triangle wave generation enable" ] # [ inline ( always ) ] pub fn wave1 ( & mut self ) -> _Wave1W { _Wave1W { w : self } } # [ doc = "Bits 3:5 - DAC channel1 trigger selection" ] # [ inline ( always ) ] pub fn tsel1 ( & mut self ) -> _Tsel1W { _Tsel1W { w : self } } # [ doc = "Bit 2 - DAC channel1 trigger enable" ] # [ inline ( always ) ] pub fn ten1 ( & mut self ) -> _Ten1W { _Ten1W { w : self } } # [ doc = "Bit 1 - DAC channel1 output buffer disable" ] # [ inline ( always ) ] pub fn boff1 ( & mut self ) -> _Boff1W { _Boff1W { w : self } } # [ doc = "Bit 0 - DAC channel1 enable" ] # [ inline ( always ) ] pub fn en1 ( & mut self ) -> _En1W { _En1W { w : self } } } } # [ doc = "software trigger register" ] pub struct Swtrigr { register : VolatileCell < u32 > } # [ doc = "software trigger register" ] pub mod swtrigr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Swtrigr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Swtrig2W < 'a > { w : & 'a mut W , } impl < 'a > _Swtrig2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swtrig1W < 'a > { w : & 'a mut W , } impl < 'a > _Swtrig1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - DAC channel2 software trigger" ] # [ inline ( always ) ] pub fn swtrig2 ( & mut self ) -> _Swtrig2W { _Swtrig2W { w : self } } # [ doc = "Bit 0 - DAC channel1 software trigger" ] # [ inline ( always ) ] pub fn swtrig1 ( & mut self ) -> _Swtrig1W { _Swtrig1W { w : self } } } } # [ doc = "channel1 12-bit right-aligned data holding register" ] pub struct Dhr12r1 { register : VolatileCell < u32 > } # [ doc = "channel1 12-bit right-aligned data holding register" ] pub mod dhr12r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u16 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "channel1 12-bit left aligned data holding register" ] pub struct Dhr12l1 { register : VolatileCell < u32 > } # [ doc = "channel1 12-bit left aligned data holding register" ] pub mod dhr12l1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12l1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u16 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "channel1 8-bit right aligned data holding register" ] pub struct Dhr8r1 { register : VolatileCell < u32 > } # [ doc = "channel1 8-bit right aligned data holding register" ] pub mod dhr8r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr8r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u8 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "channel2 12-bit right aligned data holding register" ] pub struct Dhr12r2 { register : VolatileCell < u32 > } # [ doc = "channel2 12-bit right aligned data holding register" ] pub mod dhr12r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u16 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - DAC channel2 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc2dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - DAC channel2 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } } } # [ doc = "channel2 12-bit left aligned data holding register" ] pub struct Dhr12l2 { register : VolatileCell < u32 > } # [ doc = "channel2 12-bit left aligned data holding register" ] pub mod dhr12l2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12l2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u16 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:15 - DAC channel2 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc2dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:15 - DAC channel2 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } } } # [ doc = "channel2 8-bit right-aligned data holding register" ] pub struct Dhr8r2 { register : VolatileCell < u32 > } # [ doc = "channel2 8-bit right-aligned data holding register" ] pub mod dhr8r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr8r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u8 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - DAC channel2 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dacc2dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - DAC channel2 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } } } # [ doc = "Dual DAC 12-bit right-aligned data holding register" ] pub struct Dhr12rd { register : VolatileCell < u32 > } # [ doc = "Dual DAC 12-bit right-aligned data holding register" ] pub mod dhr12rd { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12rd { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u16 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u16 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:27 - DAC channel2 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc2dhrR { bits } } # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:27 - DAC channel2 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "DUAL DAC 12-bit left aligned data holding register" ] pub struct Dhr12ld { register : VolatileCell < u32 > } # [ doc = "DUAL DAC 12-bit left aligned data holding register" ] pub mod dhr12ld { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr12ld { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u16 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u16 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 20:31 - DAC channel2 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc2dhrR { bits } } # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 20:31 - DAC channel2 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "DUAL DAC 8-bit right aligned data holding register" ] pub struct Dhr8rd { register : VolatileCell < u32 > } # [ doc = "DUAL DAC 8-bit right aligned data holding register" ] pub mod dhr8rd { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dhr8rd { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dacc2dhrR { bits : u8 , } impl Dacc2dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dacc1dhrR { bits : u8 , } impl Dacc1dhrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dacc2dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc2dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dacc1dhrW < 'a > { w : & 'a mut W , } impl < 'a > _Dacc1dhrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:15 - DAC channel2 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & self ) -> Dacc2dhrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dacc2dhrR { bits } } # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & self ) -> Dacc1dhrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dacc1dhrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:15 - DAC channel2 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc2dhr ( & mut self ) -> _Dacc2dhrW { _Dacc2dhrW { w : self } } # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ] # [ inline ( always ) ] pub fn dacc1dhr ( & mut self ) -> _Dacc1dhrW { _Dacc1dhrW { w : self } } } } # [ doc = "channel1 data output register" ] pub struct Dor1 { register : VolatileCell < u32 > } # [ doc = "channel1 data output register" ] pub mod dor1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dor1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Dacc1dorR { bits : u16 , } impl Dacc1dorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - DAC channel1 data output" ] # [ inline ( always ) ] pub fn dacc1dor ( & self ) -> Dacc1dorR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc1dorR { bits } } } } # [ doc = "channel2 data output register" ] pub struct Dor2 { register : VolatileCell < u32 > } # [ doc = "channel2 data output register" ] pub mod dor2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dor2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Dacc2dorR { bits : u16 , } impl Dacc2dorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - DAC channel2 data output" ] # [ inline ( always ) ] pub fn dacc2dor ( & self ) -> Dacc2dorR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Dacc2dorR { bits } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Dmaudr2R { bits : u8 , } impl Dmaudr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Dmaudr1R { bits : u8 , } impl Dmaudr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Dmaudr2W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaudr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Dmaudr1W < 'a > { w : & 'a mut W , } impl < 'a > _Dmaudr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 29 - DAC channel2 DMA underrun flag" ] # [ inline ( always ) ] pub fn dmaudr2 ( & self ) -> Dmaudr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaudr2R { bits } } # [ doc = "Bit 13 - DAC channel1 DMA underrun flag" ] # [ inline ( always ) ] pub fn dmaudr1 ( & self ) -> Dmaudr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Dmaudr1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 29 - DAC channel2 DMA underrun flag" ] # [ inline ( always ) ] pub fn dmaudr2 ( & mut self ) -> _Dmaudr2W { _Dmaudr2W { w : self } } # [ doc = "Bit 13 - DAC channel1 DMA underrun flag" ] # [ inline ( always ) ] pub fn dmaudr1 ( & mut self ) -> _Dmaudr1W { _Dmaudr1W { w : self } } } } } # [ doc = "Digital-to-analog converter" ] pub struct Dac { register_block : dac :: RegisterBlock } impl Deref for Dac { type Target = dac :: RegisterBlock ; fn deref ( & self ) -> & dac :: RegisterBlock { & self . register_block } } # [ doc = "Power control" ] pub const PWR : Peripheral < Pwr > = unsafe { Peripheral :: new ( 1073770496 ) } ; # [ doc = "Power control" ] pub mod pwr { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - power control register" ] pub cr : Cr , # [ doc = "0x04 - power control/status register" ] pub csr : Csr , } # [ doc = "power control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "power control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FpdsR { bits : u8 , } impl FpdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbpR { bits : u8 , } impl DbpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlsR { bits : u8 , } impl PlsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PvdeR { bits : u8 , } impl PvdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CsbfR { bits : u8 , } impl CsbfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CwufR { bits : u8 , } impl CwufR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PddsR { bits : u8 , } impl PddsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LpdsR { bits : u8 , } impl LpdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FpdsW < 'a > { w : & 'a mut W , } impl < 'a > _FpdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbpW < 'a > { w : & 'a mut W , } impl < 'a > _DbpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PlsW < 'a > { w : & 'a mut W , } impl < 'a > _PlsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PvdeW < 'a > { w : & 'a mut W , } impl < 'a > _PvdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CsbfW < 'a > { w : & 'a mut W , } impl < 'a > _CsbfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CwufW < 'a > { w : & 'a mut W , } impl < 'a > _CwufW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PddsW < 'a > { w : & 'a mut W , } impl < 'a > _PddsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LpdsW < 'a > { w : & 'a mut W , } impl < 'a > _LpdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - Flash power down in Stop mode" ] # [ inline ( always ) ] pub fn fpds ( & self ) -> FpdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FpdsR { bits } } # [ doc = "Bit 8 - Disable backup domain write protection" ] # [ inline ( always ) ] pub fn dbp ( & self ) -> DbpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbpR { bits } } # [ doc = "Bits 5:7 - PVD level selection" ] # [ inline ( always ) ] pub fn pls ( & self ) -> PlsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlsR { bits } } # [ doc = "Bit 4 - Power voltage detector enable" ] # [ inline ( always ) ] pub fn pvde ( & self ) -> PvdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PvdeR { bits } } # [ doc = "Bit 3 - Clear standby flag" ] # [ inline ( always ) ] pub fn csbf ( & self ) -> CsbfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsbfR { bits } } # [ doc = "Bit 2 - Clear wakeup flag" ] # [ inline ( always ) ] pub fn cwuf ( & self ) -> CwufR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CwufR { bits } } # [ doc = "Bit 1 - Power down deepsleep" ] # [ inline ( always ) ] pub fn pdds ( & self ) -> PddsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PddsR { bits } } # [ doc = "Bit 0 - Low-power deep sleep" ] # [ inline ( always ) ] pub fn lpds ( & self ) -> LpdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LpdsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - Flash power down in Stop mode" ] # [ inline ( always ) ] pub fn fpds ( & mut self ) -> _FpdsW { _FpdsW { w : self } } # [ doc = "Bit 8 - Disable backup domain write protection" ] # [ inline ( always ) ] pub fn dbp ( & mut self ) -> _DbpW { _DbpW { w : self } } # [ doc = "Bits 5:7 - PVD level selection" ] # [ inline ( always ) ] pub fn pls ( & mut self ) -> _PlsW { _PlsW { w : self } } # [ doc = "Bit 4 - Power voltage detector enable" ] # [ inline ( always ) ] pub fn pvde ( & mut self ) -> _PvdeW { _PvdeW { w : self } } # [ doc = "Bit 3 - Clear standby flag" ] # [ inline ( always ) ] pub fn csbf ( & mut self ) -> _CsbfW { _CsbfW { w : self } } # [ doc = "Bit 2 - Clear wakeup flag" ] # [ inline ( always ) ] pub fn cwuf ( & mut self ) -> _CwufW { _CwufW { w : self } } # [ doc = "Bit 1 - Power down deepsleep" ] # [ inline ( always ) ] pub fn pdds ( & mut self ) -> _PddsW { _PddsW { w : self } } # [ doc = "Bit 0 - Low-power deep sleep" ] # [ inline ( always ) ] pub fn lpds ( & mut self ) -> _LpdsW { _LpdsW { w : self } } } } # [ doc = "power control/status register" ] pub struct Csr { register : VolatileCell < u32 > } # [ doc = "power control/status register" ] pub mod csr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Csr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct WufR { bits : u8 , } impl WufR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SbfR { bits : u8 , } impl SbfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PvdoR { bits : u8 , } impl PvdoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BrrR { bits : u8 , } impl BrrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EwupR { bits : u8 , } impl EwupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BreR { bits : u8 , } impl BreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VosrdyR { bits : u8 , } impl VosrdyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EwupW < 'a > { w : & 'a mut W , } impl < 'a > _EwupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BreW < 'a > { w : & 'a mut W , } impl < 'a > _BreW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VosrdyW < 'a > { w : & 'a mut W , } impl < 'a > _VosrdyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Wakeup flag" ] # [ inline ( always ) ] pub fn wuf ( & self ) -> WufR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WufR { bits } } # [ doc = "Bit 1 - Standby flag" ] # [ inline ( always ) ] pub fn sbf ( & self ) -> SbfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SbfR { bits } } # [ doc = "Bit 2 - PVD output" ] # [ inline ( always ) ] pub fn pvdo ( & self ) -> PvdoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PvdoR { bits } } # [ doc = "Bit 3 - Backup regulator ready" ] # [ inline ( always ) ] pub fn brr ( & self ) -> BrrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BrrR { bits } } # [ doc = "Bit 8 - Enable WKUP pin" ] # [ inline ( always ) ] pub fn ewup ( & self ) -> EwupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EwupR { bits } } # [ doc = "Bit 9 - Backup regulator enable" ] # [ inline ( always ) ] pub fn bre ( & self ) -> BreR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BreR { bits } } # [ doc = "Bit 14 - Regulator voltage scaling output selection ready bit" ] # [ inline ( always ) ] pub fn vosrdy ( & self ) -> VosrdyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VosrdyR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 8 - Enable WKUP pin" ] # [ inline ( always ) ] pub fn ewup ( & mut self ) -> _EwupW { _EwupW { w : self } } # [ doc = "Bit 9 - Backup regulator enable" ] # [ inline ( always ) ] pub fn bre ( & mut self ) -> _BreW { _BreW { w : self } } # [ doc = "Bit 14 - Regulator voltage scaling output selection ready bit" ] # [ inline ( always ) ] pub fn vosrdy ( & mut self ) -> _VosrdyW { _VosrdyW { w : self } } } } } # [ doc = "Power control" ] pub struct Pwr { register_block : pwr :: RegisterBlock } impl Deref for Pwr { type Target = pwr :: RegisterBlock ; fn deref ( & self ) -> & pwr :: RegisterBlock { & self . register_block } } # [ doc = "Inter-integrated circuit" ] pub const I2C3 : Peripheral < I2c3 > = unsafe { Peripheral :: new ( 1073765376 ) } ; # [ doc = "Inter-integrated circuit" ] pub mod i2c3 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - Control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - Own address register 1" ] pub oar1 : Oar1 , # [ doc = "0x0c - Own address register 2" ] pub oar2 : Oar2 , # [ doc = "0x10 - Data register" ] pub dr : Dr , # [ doc = "0x14 - Status register 1" ] pub sr1 : Sr1 , # [ doc = "0x18 - Status register 2" ] pub sr2 : Sr2 , # [ doc = "0x1c - Clock control register" ] pub ccr : Ccr , # [ doc = "0x20 - TRISE register" ] pub trise : Trise , } # [ doc = "Control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "Control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SwrstR { bits : u8 , } impl SwrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlertR { bits : u8 , } impl AlertR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PecR { bits : u8 , } impl PecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PosR { bits : u8 , } impl PosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StopR { bits : u8 , } impl StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StartR { bits : u8 , } impl StartR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NostretchR { bits : u8 , } impl NostretchR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EngcR { bits : u8 , } impl EngcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnpecR { bits : u8 , } impl EnpecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnarpR { bits : u8 , } impl EnarpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmbtypeR { bits : u8 , } impl SmbtypeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmbusR { bits : u8 , } impl SmbusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PeR { bits : u8 , } impl PeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SwrstW < 'a > { w : & 'a mut W , } impl < 'a > _SwrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlertW < 'a > { w : & 'a mut W , } impl < 'a > _AlertW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PecW < 'a > { w : & 'a mut W , } impl < 'a > _PecW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PosW < 'a > { w : & 'a mut W , } impl < 'a > _PosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StopW < 'a > { w : & 'a mut W , } impl < 'a > _StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StartW < 'a > { w : & 'a mut W , } impl < 'a > _StartW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NostretchW < 'a > { w : & 'a mut W , } impl < 'a > _NostretchW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EngcW < 'a > { w : & 'a mut W , } impl < 'a > _EngcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnpecW < 'a > { w : & 'a mut W , } impl < 'a > _EnpecW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnarpW < 'a > { w : & 'a mut W , } impl < 'a > _EnarpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmbtypeW < 'a > { w : & 'a mut W , } impl < 'a > _SmbtypeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmbusW < 'a > { w : & 'a mut W , } impl < 'a > _SmbusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PeW < 'a > { w : & 'a mut W , } impl < 'a > _PeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Software reset" ] # [ inline ( always ) ] pub fn swrst ( & self ) -> SwrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SwrstR { bits } } # [ doc = "Bit 13 - SMBus alert" ] # [ inline ( always ) ] pub fn alert ( & self ) -> AlertR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlertR { bits } } # [ doc = "Bit 12 - Packet error checking" ] # [ inline ( always ) ] pub fn pec ( & self ) -> PecR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PecR { bits } } # [ doc = "Bit 11 - Acknowledge/PEC Position (for data reception)" ] # [ inline ( always ) ] pub fn pos ( & self ) -> PosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PosR { bits } } # [ doc = "Bit 10 - Acknowledge enable" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 9 - Stop generation" ] # [ inline ( always ) ] pub fn stop ( & self ) -> StopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StopR { bits } } # [ doc = "Bit 8 - Start generation" ] # [ inline ( always ) ] pub fn start ( & self ) -> StartR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StartR { bits } } # [ doc = "Bit 7 - Clock stretching disable (Slave mode)" ] # [ inline ( always ) ] pub fn nostretch ( & self ) -> NostretchR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NostretchR { bits } } # [ doc = "Bit 6 - General call enable" ] # [ inline ( always ) ] pub fn engc ( & self ) -> EngcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EngcR { bits } } # [ doc = "Bit 5 - PEC enable" ] # [ inline ( always ) ] pub fn enpec ( & self ) -> EnpecR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnpecR { bits } } # [ doc = "Bit 4 - ARP enable" ] # [ inline ( always ) ] pub fn enarp ( & self ) -> EnarpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnarpR { bits } } # [ doc = "Bit 3 - SMBus type" ] # [ inline ( always ) ] pub fn smbtype ( & self ) -> SmbtypeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmbtypeR { bits } } # [ doc = "Bit 1 - SMBus mode" ] # [ inline ( always ) ] pub fn smbus ( & self ) -> SmbusR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmbusR { bits } } # [ doc = "Bit 0 - Peripheral enable" ] # [ inline ( always ) ] pub fn pe ( & self ) -> PeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Software reset" ] # [ inline ( always ) ] pub fn swrst ( & mut self ) -> _SwrstW { _SwrstW { w : self } } # [ doc = "Bit 13 - SMBus alert" ] # [ inline ( always ) ] pub fn alert ( & mut self ) -> _AlertW { _AlertW { w : self } } # [ doc = "Bit 12 - Packet error checking" ] # [ inline ( always ) ] pub fn pec ( & mut self ) -> _PecW { _PecW { w : self } } # [ doc = "Bit 11 - Acknowledge/PEC Position (for data reception)" ] # [ inline ( always ) ] pub fn pos ( & mut self ) -> _PosW { _PosW { w : self } } # [ doc = "Bit 10 - Acknowledge enable" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 9 - Stop generation" ] # [ inline ( always ) ] pub fn stop ( & mut self ) -> _StopW { _StopW { w : self } } # [ doc = "Bit 8 - Start generation" ] # [ inline ( always ) ] pub fn start ( & mut self ) -> _StartW { _StartW { w : self } } # [ doc = "Bit 7 - Clock stretching disable (Slave mode)" ] # [ inline ( always ) ] pub fn nostretch ( & mut self ) -> _NostretchW { _NostretchW { w : self } } # [ doc = "Bit 6 - General call enable" ] # [ inline ( always ) ] pub fn engc ( & mut self ) -> _EngcW { _EngcW { w : self } } # [ doc = "Bit 5 - PEC enable" ] # [ inline ( always ) ] pub fn enpec ( & mut self ) -> _EnpecW { _EnpecW { w : self } } # [ doc = "Bit 4 - ARP enable" ] # [ inline ( always ) ] pub fn enarp ( & mut self ) -> _EnarpW { _EnarpW { w : self } } # [ doc = "Bit 3 - SMBus type" ] # [ inline ( always ) ] pub fn smbtype ( & mut self ) -> _SmbtypeW { _SmbtypeW { w : self } } # [ doc = "Bit 1 - SMBus mode" ] # [ inline ( always ) ] pub fn smbus ( & mut self ) -> _SmbusW { _SmbusW { w : self } } # [ doc = "Bit 0 - Peripheral enable" ] # [ inline ( always ) ] pub fn pe ( & mut self ) -> _PeW { _PeW { w : self } } } } # [ doc = "Control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "Control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LastR { bits : u8 , } impl LastR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmaenR { bits : u8 , } impl DmaenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ItbufenR { bits : u8 , } impl ItbufenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ItevtenR { bits : u8 , } impl ItevtenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IterrenR { bits : u8 , } impl IterrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FreqR { bits : u8 , } impl FreqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LastW < 'a > { w : & 'a mut W , } impl < 'a > _LastW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmaenW < 'a > { w : & 'a mut W , } impl < 'a > _DmaenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ItbufenW < 'a > { w : & 'a mut W , } impl < 'a > _ItbufenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ItevtenW < 'a > { w : & 'a mut W , } impl < 'a > _ItevtenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IterrenW < 'a > { w : & 'a mut W , } impl < 'a > _IterrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FreqW < 'a > { w : & 'a mut W , } impl < 'a > _FreqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 12 - DMA last transfer" ] # [ inline ( always ) ] pub fn last ( & self ) -> LastR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LastR { bits } } # [ doc = "Bit 11 - DMA requests enable" ] # [ inline ( always ) ] pub fn dmaen ( & self ) -> DmaenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmaenR { bits } } # [ doc = "Bit 10 - Buffer interrupt enable" ] # [ inline ( always ) ] pub fn itbufen ( & self ) -> ItbufenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ItbufenR { bits } } # [ doc = "Bit 9 - Event interrupt enable" ] # [ inline ( always ) ] pub fn itevten ( & self ) -> ItevtenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ItevtenR { bits } } # [ doc = "Bit 8 - Error interrupt enable" ] # [ inline ( always ) ] pub fn iterren ( & self ) -> IterrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IterrenR { bits } } # [ doc = "Bits 0:5 - Peripheral clock frequency" ] # [ inline ( always ) ] pub fn freq ( & self ) -> FreqR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FreqR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 12 - DMA last transfer" ] # [ inline ( always ) ] pub fn last ( & mut self ) -> _LastW { _LastW { w : self } } # [ doc = "Bit 11 - DMA requests enable" ] # [ inline ( always ) ] pub fn dmaen ( & mut self ) -> _DmaenW { _DmaenW { w : self } } # [ doc = "Bit 10 - Buffer interrupt enable" ] # [ inline ( always ) ] pub fn itbufen ( & mut self ) -> _ItbufenW { _ItbufenW { w : self } } # [ doc = "Bit 9 - Event interrupt enable" ] # [ inline ( always ) ] pub fn itevten ( & mut self ) -> _ItevtenW { _ItevtenW { w : self } } # [ doc = "Bit 8 - Error interrupt enable" ] # [ inline ( always ) ] pub fn iterren ( & mut self ) -> _IterrenW { _IterrenW { w : self } } # [ doc = "Bits 0:5 - Peripheral clock frequency" ] # [ inline ( always ) ] pub fn freq ( & mut self ) -> _FreqW { _FreqW { w : self } } } } # [ doc = "Own address register 1" ] pub struct Oar1 { register : VolatileCell < u32 > } # [ doc = "Own address register 1" ] pub mod oar1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Oar1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AddmodeR { bits : u8 , } impl AddmodeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Add10R { bits : u8 , } impl Add10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Add7R { bits : u8 , } impl Add7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Add0R { bits : u8 , } impl Add0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AddmodeW < 'a > { w : & 'a mut W , } impl < 'a > _AddmodeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Add10W < 'a > { w : & 'a mut W , } impl < 'a > _Add10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Add7W < 'a > { w : & 'a mut W , } impl < 'a > _Add7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Add0W < 'a > { w : & 'a mut W , } impl < 'a > _Add0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Addressing mode (slave mode)" ] # [ inline ( always ) ] pub fn addmode ( & self ) -> AddmodeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddmodeR { bits } } # [ doc = "Bits 8:9 - Interface address" ] # [ inline ( always ) ] pub fn add10 ( & self ) -> Add10R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add10R { bits } } # [ doc = "Bits 1:7 - Interface address" ] # [ inline ( always ) ] pub fn add7 ( & self ) -> Add7R { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add7R { bits } } # [ doc = "Bit 0 - Interface address" ] # [ inline ( always ) ] pub fn add0 ( & self ) -> Add0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Addressing mode (slave mode)" ] # [ inline ( always ) ] pub fn addmode ( & mut self ) -> _AddmodeW { _AddmodeW { w : self } } # [ doc = "Bits 8:9 - Interface address" ] # [ inline ( always ) ] pub fn add10 ( & mut self ) -> _Add10W { _Add10W { w : self } } # [ doc = "Bits 1:7 - Interface address" ] # [ inline ( always ) ] pub fn add7 ( & mut self ) -> _Add7W { _Add7W { w : self } } # [ doc = "Bit 0 - Interface address" ] # [ inline ( always ) ] pub fn add0 ( & mut self ) -> _Add0W { _Add0W { w : self } } } } # [ doc = "Own address register 2" ] pub struct Oar2 { register : VolatileCell < u32 > } # [ doc = "Own address register 2" ] pub mod oar2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Oar2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Add2R { bits : u8 , } impl Add2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EndualR { bits : u8 , } impl EndualR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Add2W < 'a > { w : & 'a mut W , } impl < 'a > _Add2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EndualW < 'a > { w : & 'a mut W , } impl < 'a > _EndualW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 1:7 - Interface address" ] # [ inline ( always ) ] pub fn add2 ( & self ) -> Add2R { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add2R { bits } } # [ doc = "Bit 0 - Dual addressing mode enable" ] # [ inline ( always ) ] pub fn endual ( & self ) -> EndualR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EndualR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 1:7 - Interface address" ] # [ inline ( always ) ] pub fn add2 ( & mut self ) -> _Add2W { _Add2W { w : self } } # [ doc = "Bit 0 - Dual addressing mode enable" ] # [ inline ( always ) ] pub fn endual ( & mut self ) -> _EndualW { _EndualW { w : self } } } } # [ doc = "Data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "Data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DrR { bits : u8 , } impl DrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DrW < 'a > { w : & 'a mut W , } impl < 'a > _DrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - 8-bit data register" ] # [ inline ( always ) ] pub fn dr ( & self ) -> DrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - 8-bit data register" ] # [ inline ( always ) ] pub fn dr ( & mut self ) -> _DrW { _DrW { w : self } } } } # [ doc = "Status register 1" ] pub struct Sr1 { register : VolatileCell < u32 > } # [ doc = "Status register 1" ] pub mod sr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SmbalertR { bits : u8 , } impl SmbalertR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TimeoutR { bits : u8 , } impl TimeoutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PecerrR { bits : u8 , } impl PecerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OvrR { bits : u8 , } impl OvrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AfR { bits : u8 , } impl AfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArloR { bits : u8 , } impl ArloR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxER { bits : u8 , } impl TxER { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxNeR { bits : u8 , } impl RxNeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StopfR { bits : u8 , } impl StopfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Add10R { bits : u8 , } impl Add10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BtfR { bits : u8 , } impl BtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddrR { bits : u8 , } impl AddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SbR { bits : u8 , } impl SbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SmbalertW < 'a > { w : & 'a mut W , } impl < 'a > _SmbalertW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TimeoutW < 'a > { w : & 'a mut W , } impl < 'a > _TimeoutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PecerrW < 'a > { w : & 'a mut W , } impl < 'a > _PecerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OvrW < 'a > { w : & 'a mut W , } impl < 'a > _OvrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AfW < 'a > { w : & 'a mut W , } impl < 'a > _AfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArloW < 'a > { w : & 'a mut W , } impl < 'a > _ArloW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - SMBus alert" ] # [ inline ( always ) ] pub fn smbalert ( & self ) -> SmbalertR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmbalertR { bits } } # [ doc = "Bit 14 - Timeout or Tlow error" ] # [ inline ( always ) ] pub fn timeout ( & self ) -> TimeoutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TimeoutR { bits } } # [ doc = "Bit 12 - PEC Error in reception" ] # [ inline ( always ) ] pub fn pecerr ( & self ) -> PecerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PecerrR { bits } } # [ doc = "Bit 11 - Overrun/Underrun" ] # [ inline ( always ) ] pub fn ovr ( & self ) -> OvrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OvrR { bits } } # [ doc = "Bit 10 - Acknowledge failure" ] # [ inline ( always ) ] pub fn af ( & self ) -> AfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AfR { bits } } # [ doc = "Bit 9 - Arbitration lost (master mode)" ] # [ inline ( always ) ] pub fn arlo ( & self ) -> ArloR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArloR { bits } } # [ doc = "Bit 8 - Bus error" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 7 - Data register empty (transmitters)" ] # [ inline ( always ) ] pub fn tx_e ( & self ) -> TxER { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxER { bits } } # [ doc = "Bit 6 - Data register not empty (receivers)" ] # [ inline ( always ) ] pub fn rx_ne ( & self ) -> RxNeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxNeR { bits } } # [ doc = "Bit 4 - Stop detection (slave mode)" ] # [ inline ( always ) ] pub fn stopf ( & self ) -> StopfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StopfR { bits } } # [ doc = "Bit 3 - 10-bit header sent (Master mode)" ] # [ inline ( always ) ] pub fn add10 ( & self ) -> Add10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add10R { bits } } # [ doc = "Bit 2 - Byte transfer finished" ] # [ inline ( always ) ] pub fn btf ( & self ) -> BtfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BtfR { bits } } # [ doc = "Bit 1 - Address sent (master mode)/matched (slave mode)" ] # [ inline ( always ) ] pub fn addr ( & self ) -> AddrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddrR { bits } } # [ doc = "Bit 0 - Start bit (Master mode)" ] # [ inline ( always ) ] pub fn sb ( & self ) -> SbR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SbR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - SMBus alert" ] # [ inline ( always ) ] pub fn smbalert ( & mut self ) -> _SmbalertW { _SmbalertW { w : self } } # [ doc = "Bit 14 - Timeout or Tlow error" ] # [ inline ( always ) ] pub fn timeout ( & mut self ) -> _TimeoutW { _TimeoutW { w : self } } # [ doc = "Bit 12 - PEC Error in reception" ] # [ inline ( always ) ] pub fn pecerr ( & mut self ) -> _PecerrW { _PecerrW { w : self } } # [ doc = "Bit 11 - Overrun/Underrun" ] # [ inline ( always ) ] pub fn ovr ( & mut self ) -> _OvrW { _OvrW { w : self } } # [ doc = "Bit 10 - Acknowledge failure" ] # [ inline ( always ) ] pub fn af ( & mut self ) -> _AfW { _AfW { w : self } } # [ doc = "Bit 9 - Arbitration lost (master mode)" ] # [ inline ( always ) ] pub fn arlo ( & mut self ) -> _ArloW { _ArloW { w : self } } # [ doc = "Bit 8 - Bus error" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } } } # [ doc = "Status register 2" ] pub struct Sr2 { register : VolatileCell < u32 > } # [ doc = "Status register 2" ] pub mod sr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Sr2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct PecR { bits : u8 , } impl PecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DualfR { bits : u8 , } impl DualfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmbhostR { bits : u8 , } impl SmbhostR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmbdefaultR { bits : u8 , } impl SmbdefaultR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GencallR { bits : u8 , } impl GencallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TraR { bits : u8 , } impl TraR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BusyR { bits : u8 , } impl BusyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MslR { bits : u8 , } impl MslR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:15 - acket error checking register" ] # [ inline ( always ) ] pub fn pec ( & self ) -> PecR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PecR { bits } } # [ doc = "Bit 7 - Dual flag (Slave mode)" ] # [ inline ( always ) ] pub fn dualf ( & self ) -> DualfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DualfR { bits } } # [ doc = "Bit 6 - SMBus host header (Slave mode)" ] # [ inline ( always ) ] pub fn smbhost ( & self ) -> SmbhostR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmbhostR { bits } } # [ doc = "Bit 5 - SMBus device default address (Slave mode)" ] # [ inline ( always ) ] pub fn smbdefault ( & self ) -> SmbdefaultR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmbdefaultR { bits } } # [ doc = "Bit 4 - General call address (Slave mode)" ] # [ inline ( always ) ] pub fn gencall ( & self ) -> GencallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GencallR { bits } } # [ doc = "Bit 2 - Transmitter/receiver" ] # [ inline ( always ) ] pub fn tra ( & self ) -> TraR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TraR { bits } } # [ doc = "Bit 1 - Bus busy" ] # [ inline ( always ) ] pub fn busy ( & self ) -> BusyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BusyR { bits } } # [ doc = "Bit 0 - Master/slave" ] # [ inline ( always ) ] pub fn msl ( & self ) -> MslR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MslR { bits } } } } # [ doc = "Clock control register" ] pub struct Ccr { register : VolatileCell < u32 > } # [ doc = "Clock control register" ] pub mod ccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FSR { bits : u8 , } impl FSR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DutyR { bits : u8 , } impl DutyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcrR { bits : u16 , } impl CcrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _FSW < 'a > { w : & 'a mut W , } impl < 'a > _FSW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DutyW < 'a > { w : & 'a mut W , } impl < 'a > _DutyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcrW < 'a > { w : & 'a mut W , } impl < 'a > _CcrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - I2C master mode selection" ] # [ inline ( always ) ] pub fn f_s ( & self ) -> FSR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FSR { bits } } # [ doc = "Bit 14 - Fast mode duty cycle" ] # [ inline ( always ) ] pub fn duty ( & self ) -> DutyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DutyR { bits } } # [ doc = "Bits 0:11 - Clock control register in Fast/Standard mode (Master mode)" ] # [ inline ( always ) ] pub fn ccr ( & self ) -> CcrR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CcrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - I2C master mode selection" ] # [ inline ( always ) ] pub fn f_s ( & mut self ) -> _FSW { _FSW { w : self } } # [ doc = "Bit 14 - Fast mode duty cycle" ] # [ inline ( always ) ] pub fn duty ( & mut self ) -> _DutyW { _DutyW { w : self } } # [ doc = "Bits 0:11 - Clock control register in Fast/Standard mode (Master mode)" ] # [ inline ( always ) ] pub fn ccr ( & mut self ) -> _CcrW { _CcrW { w : self } } } } # [ doc = "TRISE register" ] pub struct Trise { register : VolatileCell < u32 > } # [ doc = "TRISE register" ] pub mod trise { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Trise { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TriseR { bits : u8 , } impl TriseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TriseW < 'a > { w : & 'a mut W , } impl < 'a > _TriseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:5 - Maximum rise time in Fast/Standard mode (Master mode)" ] # [ inline ( always ) ] pub fn trise ( & self ) -> TriseR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TriseR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:5 - Maximum rise time in Fast/Standard mode (Master mode)" ] # [ inline ( always ) ] pub fn trise ( & mut self ) -> _TriseW { _TriseW { w : self } } } } } # [ doc = "Inter-integrated circuit" ] pub struct I2c3 { register_block : i2c3 :: RegisterBlock } impl Deref for I2c3 { type Target = i2c3 :: RegisterBlock ; fn deref ( & self ) -> & i2c3 :: RegisterBlock { & self . register_block } } # [ doc = "I2C2" ] pub const I2C2 : Peripheral < I2c2 > = unsafe { Peripheral :: new ( 1073764352 ) } ; # [ doc = r" Register block" ] pub struct I2c2 { register_block : i2c3 :: RegisterBlock } impl Deref for I2c2 { type Target = i2c3 :: RegisterBlock ; fn deref ( & self ) -> & i2c3 :: RegisterBlock { & self . register_block } } # [ doc = "I2C1" ] pub const I2C1 : Peripheral < I2c1 > = unsafe { Peripheral :: new ( 1073763328 ) } ; # [ doc = r" Register block" ] pub struct I2c1 { register_block : i2c3 :: RegisterBlock } impl Deref for I2c1 { type Target = i2c3 :: RegisterBlock ; fn deref ( & self ) -> & i2c3 :: RegisterBlock { & self . register_block } } # [ doc = "Independent watchdog" ] pub const IWDG : Peripheral < Iwdg > = unsafe { Peripheral :: new ( 1073754112 ) } ; # [ doc = "Independent watchdog" ] pub mod iwdg { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Key register" ] pub kr : Kr , # [ doc = "0x04 - Prescaler register" ] pub pr : Pr , # [ doc = "0x08 - Reload register" ] pub rlr : Rlr , # [ doc = "0x0c - Status register" ] pub sr : Sr , } # [ doc = "Key register" ] pub struct Kr { register : VolatileCell < u32 > } # [ doc = "Key register" ] pub mod kr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Kr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _KeyW < 'a > { w : & 'a mut W , } impl < 'a > _KeyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Key value (write only, read 0000h)" ] # [ inline ( always ) ] pub fn key ( & mut self ) -> _KeyW { _KeyW { w : self } } } } # [ doc = "Prescaler register" ] pub struct Pr { register : VolatileCell < u32 > } # [ doc = "Prescaler register" ] pub mod pr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrR { bits : u8 , } impl PrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrW < 'a > { w : & 'a mut W , } impl < 'a > _PrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:2 - Prescaler divider" ] # [ inline ( always ) ] pub fn pr ( & self ) -> PrR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:2 - Prescaler divider" ] # [ inline ( always ) ] pub fn pr ( & mut self ) -> _PrW { _PrW { w : self } } } } # [ doc = "Reload register" ] pub struct Rlr { register : VolatileCell < u32 > } # [ doc = "Reload register" ] pub mod rlr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Rlr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RlR { bits : u16 , } impl RlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _RlW < 'a > { w : & 'a mut W , } impl < 'a > _RlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Watchdog counter reload value" ] # [ inline ( always ) ] pub fn rl ( & self ) -> RlR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4095 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Watchdog counter reload value" ] # [ inline ( always ) ] pub fn rl ( & mut self ) -> _RlW { _RlW { w : self } } } } # [ doc = "Status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "Status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Sr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RvuR { bits : u8 , } impl RvuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PvuR { bits : u8 , } impl PvuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - Watchdog counter reload value update" ] # [ inline ( always ) ] pub fn rvu ( & self ) -> RvuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RvuR { bits } } # [ doc = "Bit 0 - Watchdog prescaler value update" ] # [ inline ( always ) ] pub fn pvu ( & self ) -> PvuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PvuR { bits } } } } } # [ doc = "Independent watchdog" ] pub struct Iwdg { register_block : iwdg :: RegisterBlock } impl Deref for Iwdg { type Target = iwdg :: RegisterBlock ; fn deref ( & self ) -> & iwdg :: RegisterBlock { & self . register_block } } # [ doc = "Window watchdog" ] pub const WWDG : Peripheral < Wwdg > = unsafe { Peripheral :: new ( 1073753088 ) } ; # [ doc = "Window watchdog" ] pub mod wwdg { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Control register" ] pub cr : Cr , # [ doc = "0x04 - Configuration register" ] pub cfr : Cfr , # [ doc = "0x08 - Status register" ] pub sr : Sr , } # [ doc = "Control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "Control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct WdgaR { bits : u8 , } impl WdgaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TR { bits : u8 , } impl TR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _WdgaW < 'a > { w : & 'a mut W , } impl < 'a > _WdgaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TW < 'a > { w : & 'a mut W , } impl < 'a > _TW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Activation bit" ] # [ inline ( always ) ] pub fn wdga ( & self ) -> WdgaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdgaR { bits } } # [ doc = "Bits 0:6 - 7-bit counter (MSB to LSB)" ] # [ inline ( always ) ] pub fn t ( & self ) -> TR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 127 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Activation bit" ] # [ inline ( always ) ] pub fn wdga ( & mut self ) -> _WdgaW { _WdgaW { w : self } } # [ doc = "Bits 0:6 - 7-bit counter (MSB to LSB)" ] # [ inline ( always ) ] pub fn t ( & mut self ) -> _TW { _TW { w : self } } } } # [ doc = "Configuration register" ] pub struct Cfr { register : VolatileCell < u32 > } # [ doc = "Configuration register" ] pub mod cfr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cfr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EwiR { bits : u8 , } impl EwiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Wdgtb1R { bits : u8 , } impl Wdgtb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Wdgtb0R { bits : u8 , } impl Wdgtb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WR { bits : u8 , } impl WR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EwiW < 'a > { w : & 'a mut W , } impl < 'a > _EwiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Wdgtb1W < 'a > { w : & 'a mut W , } impl < 'a > _Wdgtb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Wdgtb0W < 'a > { w : & 'a mut W , } impl < 'a > _Wdgtb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WW < 'a > { w : & 'a mut W , } impl < 'a > _WW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - Early wakeup interrupt" ] # [ inline ( always ) ] pub fn ewi ( & self ) -> EwiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EwiR { bits } } # [ doc = "Bit 8 - Timer base" ] # [ inline ( always ) ] pub fn wdgtb1 ( & self ) -> Wdgtb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Wdgtb1R { bits } } # [ doc = "Bit 7 - Timer base" ] # [ inline ( always ) ] pub fn wdgtb0 ( & self ) -> Wdgtb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Wdgtb0R { bits } } # [ doc = "Bits 0:6 - 7-bit window value" ] # [ inline ( always ) ] pub fn w ( & self ) -> WR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 127 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - Early wakeup interrupt" ] # [ inline ( always ) ] pub fn ewi ( & mut self ) -> _EwiW { _EwiW { w : self } } # [ doc = "Bit 8 - Timer base" ] # [ inline ( always ) ] pub fn wdgtb1 ( & mut self ) -> _Wdgtb1W { _Wdgtb1W { w : self } } # [ doc = "Bit 7 - Timer base" ] # [ inline ( always ) ] pub fn wdgtb0 ( & mut self ) -> _Wdgtb0W { _Wdgtb0W { w : self } } # [ doc = "Bits 0:6 - 7-bit window value" ] # [ inline ( always ) ] pub fn w ( & mut self ) -> _WW { _WW { w : self } } } } # [ doc = "Status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "Status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EwifR { bits : u8 , } impl EwifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EwifW < 'a > { w : & 'a mut W , } impl < 'a > _EwifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Early wakeup interrupt flag" ] # [ inline ( always ) ] pub fn ewif ( & self ) -> EwifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EwifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Early wakeup interrupt flag" ] # [ inline ( always ) ] pub fn ewif ( & mut self ) -> _EwifW { _EwifW { w : self } } } } } # [ doc = "Window watchdog" ] pub struct Wwdg { register_block : wwdg :: RegisterBlock } impl Deref for Wwdg { type Target = wwdg :: RegisterBlock ; fn deref ( & self ) -> & wwdg :: RegisterBlock { & self . register_block } } # [ doc = "Real-time clock" ] pub const RTC : Peripheral < Rtc > = unsafe { Peripheral :: new ( 1073752064 ) } ; # [ doc = "Real-time clock" ] pub mod rtc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - time register" ] pub tr : Tr , # [ doc = "0x04 - date register" ] pub dr : Dr , # [ doc = "0x08 - control register" ] pub cr : Cr , # [ doc = "0x0c - initialization and status register" ] pub isr : Isr , # [ doc = "0x10 - prescaler register" ] pub prer : Prer , # [ doc = "0x14 - wakeup timer register" ] pub wutr : Wutr , # [ doc = "0x18 - calibration register" ] pub calibr : Calibr , # [ doc = "0x1c - alarm A register" ] pub alrmar : Alrmar , # [ doc = "0x20 - alarm B register" ] pub alrmbr : Alrmbr , # [ doc = "0x24 - write protection register" ] pub wpr : Wpr , # [ doc = "0x28 - sub second register" ] pub ssr : Ssr , # [ doc = "0x2c - shift control register" ] pub shiftr : Shiftr , # [ doc = "0x30 - time stamp time register" ] pub tstr : Tstr , # [ doc = "0x34 - time stamp date register" ] pub tsdr : Tsdr , # [ doc = "0x38 - timestamp sub second register" ] pub tsssr : Tsssr , # [ doc = "0x3c - calibration register" ] pub calr : Calr , # [ doc = "0x40 - tamper and alternate function configuration register" ] pub tafcr : Tafcr , # [ doc = "0x44 - alarm A sub second register" ] pub alrmassr : Alrmassr , # [ doc = "0x48 - alarm B sub second register" ] pub alrmbssr : Alrmbssr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x50 - backup register" ] pub bkp0r : Bkp0r , # [ doc = "0x54 - backup register" ] pub bkp1r : Bkp1r , # [ doc = "0x58 - backup register" ] pub bkp2r : Bkp2r , # [ doc = "0x5c - backup register" ] pub bkp3r : Bkp3r , # [ doc = "0x60 - backup register" ] pub bkp4r : Bkp4r , # [ doc = "0x64 - backup register" ] pub bkp5r : Bkp5r , # [ doc = "0x68 - backup register" ] pub bkp6r : Bkp6r , # [ doc = "0x6c - backup register" ] pub bkp7r : Bkp7r , # [ doc = "0x70 - backup register" ] pub bkp8r : Bkp8r , # [ doc = "0x74 - backup register" ] pub bkp9r : Bkp9r , # [ doc = "0x78 - backup register" ] pub bkp10r : Bkp10r , # [ doc = "0x7c - backup register" ] pub bkp11r : Bkp11r , # [ doc = "0x80 - backup register" ] pub bkp12r : Bkp12r , # [ doc = "0x84 - backup register" ] pub bkp13r : Bkp13r , # [ doc = "0x88 - backup register" ] pub bkp14r : Bkp14r , # [ doc = "0x8c - backup register" ] pub bkp15r : Bkp15r , # [ doc = "0x90 - backup register" ] pub bkp16r : Bkp16r , # [ doc = "0x94 - backup register" ] pub bkp17r : Bkp17r , # [ doc = "0x98 - backup register" ] pub bkp18r : Bkp18r , # [ doc = "0x9c - backup register" ] pub bkp19r : Bkp19r , } # [ doc = "time register" ] pub struct Tr { register : VolatileCell < u32 > } # [ doc = "time register" ] pub mod tr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PmR { bits : u8 , } impl PmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtR { bits : u8 , } impl HtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HuR { bits : u8 , } impl HuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MntR { bits : u8 , } impl MntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MnuR { bits : u8 , } impl MnuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StR { bits : u8 , } impl StR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SuR { bits : u8 , } impl SuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PmW < 'a > { w : & 'a mut W , } impl < 'a > _PmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtW < 'a > { w : & 'a mut W , } impl < 'a > _HtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HuW < 'a > { w : & 'a mut W , } impl < 'a > _HuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MntW < 'a > { w : & 'a mut W , } impl < 'a > _MntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MnuW < 'a > { w : & 'a mut W , } impl < 'a > _MnuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StW < 'a > { w : & 'a mut W , } impl < 'a > _StW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SuW < 'a > { w : & 'a mut W , } impl < 'a > _SuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & self ) -> PmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmR { bits } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & self ) -> HtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtR { bits } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & self ) -> HuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HuR { bits } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & self ) -> MntR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MntR { bits } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & self ) -> MnuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MnuR { bits } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & self ) -> StR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StR { bits } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & self ) -> SuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SuR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & mut self ) -> _PmW { _PmW { w : self } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & mut self ) -> _HtW { _HtW { w : self } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & mut self ) -> _HuW { _HuW { w : self } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & mut self ) -> _MntW { _MntW { w : self } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & mut self ) -> _MnuW { _MnuW { w : self } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & mut self ) -> _StW { _StW { w : self } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & mut self ) -> _SuW { _SuW { w : self } } } } # [ doc = "date register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "date register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct YtR { bits : u8 , } impl YtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct YuR { bits : u8 , } impl YuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WduR { bits : u8 , } impl WduR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtR { bits : u8 , } impl MtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuR { bits : u8 , } impl MuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtR { bits : u8 , } impl DtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DuR { bits : u8 , } impl DuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _YtW < 'a > { w : & 'a mut W , } impl < 'a > _YtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _YuW < 'a > { w : & 'a mut W , } impl < 'a > _YuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WduW < 'a > { w : & 'a mut W , } impl < 'a > _WduW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MtW < 'a > { w : & 'a mut W , } impl < 'a > _MtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MuW < 'a > { w : & 'a mut W , } impl < 'a > _MuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtW < 'a > { w : & 'a mut W , } impl < 'a > _DtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DuW < 'a > { w : & 'a mut W , } impl < 'a > _DuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 20:23 - Year tens in BCD format" ] # [ inline ( always ) ] pub fn yt ( & self ) -> YtR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; YtR { bits } } # [ doc = "Bits 16:19 - Year units in BCD format" ] # [ inline ( always ) ] pub fn yu ( & self ) -> YuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; YuR { bits } } # [ doc = "Bits 13:15 - Week day units" ] # [ inline ( always ) ] pub fn wdu ( & self ) -> WduR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WduR { bits } } # [ doc = "Bit 12 - Month tens in BCD format" ] # [ inline ( always ) ] pub fn mt ( & self ) -> MtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtR { bits } } # [ doc = "Bits 8:11 - Month units in BCD format" ] # [ inline ( always ) ] pub fn mu ( & self ) -> MuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuR { bits } } # [ doc = "Bits 4:5 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & self ) -> DtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtR { bits } } # [ doc = "Bits 0:3 - Date units in BCD format" ] # [ inline ( always ) ] pub fn du ( & self ) -> DuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DuR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 8449 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 20:23 - Year tens in BCD format" ] # [ inline ( always ) ] pub fn yt ( & mut self ) -> _YtW { _YtW { w : self } } # [ doc = "Bits 16:19 - Year units in BCD format" ] # [ inline ( always ) ] pub fn yu ( & mut self ) -> _YuW { _YuW { w : self } } # [ doc = "Bits 13:15 - Week day units" ] # [ inline ( always ) ] pub fn wdu ( & mut self ) -> _WduW { _WduW { w : self } } # [ doc = "Bit 12 - Month tens in BCD format" ] # [ inline ( always ) ] pub fn mt ( & mut self ) -> _MtW { _MtW { w : self } } # [ doc = "Bits 8:11 - Month units in BCD format" ] # [ inline ( always ) ] pub fn mu ( & mut self ) -> _MuW { _MuW { w : self } } # [ doc = "Bits 4:5 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & mut self ) -> _DtW { _DtW { w : self } } # [ doc = "Bits 0:3 - Date units in BCD format" ] # [ inline ( always ) ] pub fn du ( & mut self ) -> _DuW { _DuW { w : self } } } } # [ doc = "control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CoeR { bits : u8 , } impl CoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OselR { bits : u8 , } impl OselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PolR { bits : u8 , } impl PolR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u8 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Sub1hR { bits : u8 , } impl Sub1hR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Add1hR { bits : u8 , } impl Add1hR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsieR { bits : u8 , } impl TsieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WutieR { bits : u8 , } impl WutieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlrbieR { bits : u8 , } impl AlrbieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlraieR { bits : u8 , } impl AlraieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TseR { bits : u8 , } impl TseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WuteR { bits : u8 , } impl WuteR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlrbeR { bits : u8 , } impl AlrbeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlraeR { bits : u8 , } impl AlraeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DceR { bits : u8 , } impl DceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FmtR { bits : u8 , } impl FmtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RefckonR { bits : u8 , } impl RefckonR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsedgeR { bits : u8 , } impl TsedgeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WckselR { bits : u8 , } impl WckselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CoeW < 'a > { w : & 'a mut W , } impl < 'a > _CoeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OselW < 'a > { w : & 'a mut W , } impl < 'a > _OselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PolW < 'a > { w : & 'a mut W , } impl < 'a > _PolW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sub1hW < 'a > { w : & 'a mut W , } impl < 'a > _Sub1hW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Add1hW < 'a > { w : & 'a mut W , } impl < 'a > _Add1hW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsieW < 'a > { w : & 'a mut W , } impl < 'a > _TsieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WutieW < 'a > { w : & 'a mut W , } impl < 'a > _WutieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlrbieW < 'a > { w : & 'a mut W , } impl < 'a > _AlrbieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlraieW < 'a > { w : & 'a mut W , } impl < 'a > _AlraieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TseW < 'a > { w : & 'a mut W , } impl < 'a > _TseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WuteW < 'a > { w : & 'a mut W , } impl < 'a > _WuteW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlrbeW < 'a > { w : & 'a mut W , } impl < 'a > _AlrbeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlraeW < 'a > { w : & 'a mut W , } impl < 'a > _AlraeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DceW < 'a > { w : & 'a mut W , } impl < 'a > _DceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FmtW < 'a > { w : & 'a mut W , } impl < 'a > _FmtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RefckonW < 'a > { w : & 'a mut W , } impl < 'a > _RefckonW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsedgeW < 'a > { w : & 'a mut W , } impl < 'a > _TsedgeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WckselW < 'a > { w : & 'a mut W , } impl < 'a > _WckselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - Calibration output enable" ] # [ inline ( always ) ] pub fn coe ( & self ) -> CoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CoeR { bits } } # [ doc = "Bits 21:22 - Output selection" ] # [ inline ( always ) ] pub fn osel ( & self ) -> OselR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OselR { bits } } # [ doc = "Bit 20 - Output polarity" ] # [ inline ( always ) ] pub fn pol ( & self ) -> PolR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PolR { bits } } # [ doc = "Bit 18 - Backup" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BkpR { bits } } # [ doc = "Bit 17 - Subtract 1 hour (winter time change)" ] # [ inline ( always ) ] pub fn sub1h ( & self ) -> Sub1hR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Sub1hR { bits } } # [ doc = "Bit 16 - Add 1 hour (summer time change)" ] # [ inline ( always ) ] pub fn add1h ( & self ) -> Add1hR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Add1hR { bits } } # [ doc = "Bit 15 - Time-stamp interrupt enable" ] # [ inline ( always ) ] pub fn tsie ( & self ) -> TsieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsieR { bits } } # [ doc = "Bit 14 - Wakeup timer interrupt enable" ] # [ inline ( always ) ] pub fn wutie ( & self ) -> WutieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WutieR { bits } } # [ doc = "Bit 13 - Alarm B interrupt enable" ] # [ inline ( always ) ] pub fn alrbie ( & self ) -> AlrbieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrbieR { bits } } # [ doc = "Bit 12 - Alarm A interrupt enable" ] # [ inline ( always ) ] pub fn alraie ( & self ) -> AlraieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlraieR { bits } } # [ doc = "Bit 11 - Time stamp enable" ] # [ inline ( always ) ] pub fn tse ( & self ) -> TseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TseR { bits } } # [ doc = "Bit 10 - Wakeup timer enable" ] # [ inline ( always ) ] pub fn wute ( & self ) -> WuteR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WuteR { bits } } # [ doc = "Bit 9 - Alarm B enable" ] # [ inline ( always ) ] pub fn alrbe ( & self ) -> AlrbeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrbeR { bits } } # [ doc = "Bit 8 - Alarm A enable" ] # [ inline ( always ) ] pub fn alrae ( & self ) -> AlraeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlraeR { bits } } # [ doc = "Bit 7 - Coarse digital calibration enable" ] # [ inline ( always ) ] pub fn dce ( & self ) -> DceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DceR { bits } } # [ doc = "Bit 6 - Hour format" ] # [ inline ( always ) ] pub fn fmt ( & self ) -> FmtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FmtR { bits } } # [ doc = "Bit 4 - Reference clock detection enable (50 or 60 Hz)" ] # [ inline ( always ) ] pub fn refckon ( & self ) -> RefckonR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RefckonR { bits } } # [ doc = "Bit 3 - Time-stamp event active edge" ] # [ inline ( always ) ] pub fn tsedge ( & self ) -> TsedgeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsedgeR { bits } } # [ doc = "Bits 0:2 - Wakeup clock selection" ] # [ inline ( always ) ] pub fn wcksel ( & self ) -> WckselR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WckselR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - Calibration output enable" ] # [ inline ( always ) ] pub fn coe ( & mut self ) -> _CoeW { _CoeW { w : self } } # [ doc = "Bits 21:22 - Output selection" ] # [ inline ( always ) ] pub fn osel ( & mut self ) -> _OselW { _OselW { w : self } } # [ doc = "Bit 20 - Output polarity" ] # [ inline ( always ) ] pub fn pol ( & mut self ) -> _PolW { _PolW { w : self } } # [ doc = "Bit 18 - Backup" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } # [ doc = "Bit 17 - Subtract 1 hour (winter time change)" ] # [ inline ( always ) ] pub fn sub1h ( & mut self ) -> _Sub1hW { _Sub1hW { w : self } } # [ doc = "Bit 16 - Add 1 hour (summer time change)" ] # [ inline ( always ) ] pub fn add1h ( & mut self ) -> _Add1hW { _Add1hW { w : self } } # [ doc = "Bit 15 - Time-stamp interrupt enable" ] # [ inline ( always ) ] pub fn tsie ( & mut self ) -> _TsieW { _TsieW { w : self } } # [ doc = "Bit 14 - Wakeup timer interrupt enable" ] # [ inline ( always ) ] pub fn wutie ( & mut self ) -> _WutieW { _WutieW { w : self } } # [ doc = "Bit 13 - Alarm B interrupt enable" ] # [ inline ( always ) ] pub fn alrbie ( & mut self ) -> _AlrbieW { _AlrbieW { w : self } } # [ doc = "Bit 12 - Alarm A interrupt enable" ] # [ inline ( always ) ] pub fn alraie ( & mut self ) -> _AlraieW { _AlraieW { w : self } } # [ doc = "Bit 11 - Time stamp enable" ] # [ inline ( always ) ] pub fn tse ( & mut self ) -> _TseW { _TseW { w : self } } # [ doc = "Bit 10 - Wakeup timer enable" ] # [ inline ( always ) ] pub fn wute ( & mut self ) -> _WuteW { _WuteW { w : self } } # [ doc = "Bit 9 - Alarm B enable" ] # [ inline ( always ) ] pub fn alrbe ( & mut self ) -> _AlrbeW { _AlrbeW { w : self } } # [ doc = "Bit 8 - Alarm A enable" ] # [ inline ( always ) ] pub fn alrae ( & mut self ) -> _AlraeW { _AlraeW { w : self } } # [ doc = "Bit 7 - Coarse digital calibration enable" ] # [ inline ( always ) ] pub fn dce ( & mut self ) -> _DceW { _DceW { w : self } } # [ doc = "Bit 6 - Hour format" ] # [ inline ( always ) ] pub fn fmt ( & mut self ) -> _FmtW { _FmtW { w : self } } # [ doc = "Bit 4 - Reference clock detection enable (50 or 60 Hz)" ] # [ inline ( always ) ] pub fn refckon ( & mut self ) -> _RefckonW { _RefckonW { w : self } } # [ doc = "Bit 3 - Time-stamp event active edge" ] # [ inline ( always ) ] pub fn tsedge ( & mut self ) -> _TsedgeW { _TsedgeW { w : self } } # [ doc = "Bits 0:2 - Wakeup clock selection" ] # [ inline ( always ) ] pub fn wcksel ( & mut self ) -> _WckselW { _WckselW { w : self } } } } # [ doc = "initialization and status register" ] pub struct Isr { register : VolatileCell < u32 > } # [ doc = "initialization and status register" ] pub mod isr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Isr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AlrawfR { bits : u8 , } impl AlrawfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlrbwfR { bits : u8 , } impl AlrbwfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WutwfR { bits : u8 , } impl WutwfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ShpfR { bits : u8 , } impl ShpfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InitsR { bits : u8 , } impl InitsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RsfR { bits : u8 , } impl RsfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InitfR { bits : u8 , } impl InitfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InitR { bits : u8 , } impl InitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlrafR { bits : u8 , } impl AlrafR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AlrbfR { bits : u8 , } impl AlrbfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WutfR { bits : u8 , } impl WutfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsfR { bits : u8 , } impl TsfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsovfR { bits : u8 , } impl TsovfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1fR { bits : u8 , } impl Tamp1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp2fR { bits : u8 , } impl Tamp2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RecalpfR { bits : u8 , } impl RecalpfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ShpfW < 'a > { w : & 'a mut W , } impl < 'a > _ShpfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RsfW < 'a > { w : & 'a mut W , } impl < 'a > _RsfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InitW < 'a > { w : & 'a mut W , } impl < 'a > _InitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlrafW < 'a > { w : & 'a mut W , } impl < 'a > _AlrafW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AlrbfW < 'a > { w : & 'a mut W , } impl < 'a > _AlrbfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WutfW < 'a > { w : & 'a mut W , } impl < 'a > _WutfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsfW < 'a > { w : & 'a mut W , } impl < 'a > _TsfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsovfW < 'a > { w : & 'a mut W , } impl < 'a > _TsovfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp1fW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp2fW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Alarm A write flag" ] # [ inline ( always ) ] pub fn alrawf ( & self ) -> AlrawfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrawfR { bits } } # [ doc = "Bit 1 - Alarm B write flag" ] # [ inline ( always ) ] pub fn alrbwf ( & self ) -> AlrbwfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrbwfR { bits } } # [ doc = "Bit 2 - Wakeup timer write flag" ] # [ inline ( always ) ] pub fn wutwf ( & self ) -> WutwfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WutwfR { bits } } # [ doc = "Bit 3 - Shift operation pending" ] # [ inline ( always ) ] pub fn shpf ( & self ) -> ShpfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ShpfR { bits } } # [ doc = "Bit 4 - Initialization status flag" ] # [ inline ( always ) ] pub fn inits ( & self ) -> InitsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InitsR { bits } } # [ doc = "Bit 5 - Registers synchronization flag" ] # [ inline ( always ) ] pub fn rsf ( & self ) -> RsfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RsfR { bits } } # [ doc = "Bit 6 - Initialization flag" ] # [ inline ( always ) ] pub fn initf ( & self ) -> InitfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InitfR { bits } } # [ doc = "Bit 7 - Initialization mode" ] # [ inline ( always ) ] pub fn init ( & self ) -> InitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InitR { bits } } # [ doc = "Bit 8 - Alarm A flag" ] # [ inline ( always ) ] pub fn alraf ( & self ) -> AlrafR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrafR { bits } } # [ doc = "Bit 9 - Alarm B flag" ] # [ inline ( always ) ] pub fn alrbf ( & self ) -> AlrbfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlrbfR { bits } } # [ doc = "Bit 10 - Wakeup timer flag" ] # [ inline ( always ) ] pub fn wutf ( & self ) -> WutfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WutfR { bits } } # [ doc = "Bit 11 - Time-stamp flag" ] # [ inline ( always ) ] pub fn tsf ( & self ) -> TsfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsfR { bits } } # [ doc = "Bit 12 - Time-stamp overflow flag" ] # [ inline ( always ) ] pub fn tsovf ( & self ) -> TsovfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsovfR { bits } } # [ doc = "Bit 13 - Tamper detection flag" ] # [ inline ( always ) ] pub fn tamp1f ( & self ) -> Tamp1fR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1fR { bits } } # [ doc = "Bit 14 - TAMPER2 detection flag" ] # [ inline ( always ) ] pub fn tamp2f ( & self ) -> Tamp2fR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp2fR { bits } } # [ doc = "Bit 16 - Recalibration pending Flag" ] # [ inline ( always ) ] pub fn recalpf ( & self ) -> RecalpfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RecalpfR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 7 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 3 - Shift operation pending" ] # [ inline ( always ) ] pub fn shpf ( & mut self ) -> _ShpfW { _ShpfW { w : self } } # [ doc = "Bit 5 - Registers synchronization flag" ] # [ inline ( always ) ] pub fn rsf ( & mut self ) -> _RsfW { _RsfW { w : self } } # [ doc = "Bit 7 - Initialization mode" ] # [ inline ( always ) ] pub fn init ( & mut self ) -> _InitW { _InitW { w : self } } # [ doc = "Bit 8 - Alarm A flag" ] # [ inline ( always ) ] pub fn alraf ( & mut self ) -> _AlrafW { _AlrafW { w : self } } # [ doc = "Bit 9 - Alarm B flag" ] # [ inline ( always ) ] pub fn alrbf ( & mut self ) -> _AlrbfW { _AlrbfW { w : self } } # [ doc = "Bit 10 - Wakeup timer flag" ] # [ inline ( always ) ] pub fn wutf ( & mut self ) -> _WutfW { _WutfW { w : self } } # [ doc = "Bit 11 - Time-stamp flag" ] # [ inline ( always ) ] pub fn tsf ( & mut self ) -> _TsfW { _TsfW { w : self } } # [ doc = "Bit 12 - Time-stamp overflow flag" ] # [ inline ( always ) ] pub fn tsovf ( & mut self ) -> _TsovfW { _TsovfW { w : self } } # [ doc = "Bit 13 - Tamper detection flag" ] # [ inline ( always ) ] pub fn tamp1f ( & mut self ) -> _Tamp1fW { _Tamp1fW { w : self } } # [ doc = "Bit 14 - TAMPER2 detection flag" ] # [ inline ( always ) ] pub fn tamp2f ( & mut self ) -> _Tamp2fW { _Tamp2fW { w : self } } } } # [ doc = "prescaler register" ] pub struct Prer { register : VolatileCell < u32 > } # [ doc = "prescaler register" ] pub mod prer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Prer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PredivAR { bits : u8 , } impl PredivAR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PredivSR { bits : u16 , } impl PredivSR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PredivAW < 'a > { w : & 'a mut W , } impl < 'a > _PredivAW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PredivSW < 'a > { w : & 'a mut W , } impl < 'a > _PredivSW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:22 - Asynchronous prescaler factor" ] # [ inline ( always ) ] pub fn prediv_a ( & self ) -> PredivAR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PredivAR { bits } } # [ doc = "Bits 0:14 - Synchronous prescaler factor" ] # [ inline ( always ) ] pub fn prediv_s ( & self ) -> PredivSR { let bits = { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PredivSR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 8323327 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:22 - Asynchronous prescaler factor" ] # [ inline ( always ) ] pub fn prediv_a ( & mut self ) -> _PredivAW { _PredivAW { w : self } } # [ doc = "Bits 0:14 - Synchronous prescaler factor" ] # [ inline ( always ) ] pub fn prediv_s ( & mut self ) -> _PredivSW { _PredivSW { w : self } } } } # [ doc = "wakeup timer register" ] pub struct Wutr { register : VolatileCell < u32 > } # [ doc = "wakeup timer register" ] pub mod wutr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Wutr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct WutR { bits : u16 , } impl WutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _WutW < 'a > { w : & 'a mut W , } impl < 'a > _WutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Wakeup auto-reload value bits" ] # [ inline ( always ) ] pub fn wut ( & self ) -> WutR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; WutR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 65535 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Wakeup auto-reload value bits" ] # [ inline ( always ) ] pub fn wut ( & mut self ) -> _WutW { _WutW { w : self } } } } # [ doc = "calibration register" ] pub struct Calibr { register : VolatileCell < u32 > } # [ doc = "calibration register" ] pub mod calibr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Calibr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DcsR { bits : u8 , } impl DcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcR { bits : u8 , } impl DcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DcsW < 'a > { w : & 'a mut W , } impl < 'a > _DcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcW < 'a > { w : & 'a mut W , } impl < 'a > _DcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Digital calibration sign" ] # [ inline ( always ) ] pub fn dcs ( & self ) -> DcsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcsR { bits } } # [ doc = "Bits 0:4 - Digital calibration" ] # [ inline ( always ) ] pub fn dc ( & self ) -> DcR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Digital calibration sign" ] # [ inline ( always ) ] pub fn dcs ( & mut self ) -> _DcsW { _DcsW { w : self } } # [ doc = "Bits 0:4 - Digital calibration" ] # [ inline ( always ) ] pub fn dc ( & mut self ) -> _DcW { _DcW { w : self } } } } # [ doc = "alarm A register" ] pub struct Alrmar { register : VolatileCell < u32 > } # [ doc = "alarm A register" ] pub mod alrmar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Alrmar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Msk4R { bits : u8 , } impl Msk4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WdselR { bits : u8 , } impl WdselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtR { bits : u8 , } impl DtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DuR { bits : u8 , } impl DuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk3R { bits : u8 , } impl Msk3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PmR { bits : u8 , } impl PmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtR { bits : u8 , } impl HtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HuR { bits : u8 , } impl HuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk2R { bits : u8 , } impl Msk2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MntR { bits : u8 , } impl MntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MnuR { bits : u8 , } impl MnuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk1R { bits : u8 , } impl Msk1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StR { bits : u8 , } impl StR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SuR { bits : u8 , } impl SuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Msk4W < 'a > { w : & 'a mut W , } impl < 'a > _Msk4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WdselW < 'a > { w : & 'a mut W , } impl < 'a > _WdselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtW < 'a > { w : & 'a mut W , } impl < 'a > _DtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DuW < 'a > { w : & 'a mut W , } impl < 'a > _DuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk3W < 'a > { w : & 'a mut W , } impl < 'a > _Msk3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PmW < 'a > { w : & 'a mut W , } impl < 'a > _PmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtW < 'a > { w : & 'a mut W , } impl < 'a > _HtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HuW < 'a > { w : & 'a mut W , } impl < 'a > _HuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk2W < 'a > { w : & 'a mut W , } impl < 'a > _Msk2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MntW < 'a > { w : & 'a mut W , } impl < 'a > _MntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MnuW < 'a > { w : & 'a mut W , } impl < 'a > _MnuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk1W < 'a > { w : & 'a mut W , } impl < 'a > _Msk1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StW < 'a > { w : & 'a mut W , } impl < 'a > _StW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SuW < 'a > { w : & 'a mut W , } impl < 'a > _SuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - Alarm A date mask" ] # [ inline ( always ) ] pub fn msk4 ( & self ) -> Msk4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk4R { bits } } # [ doc = "Bit 30 - Week day selection" ] # [ inline ( always ) ] pub fn wdsel ( & self ) -> WdselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdselR { bits } } # [ doc = "Bits 28:29 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & self ) -> DtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtR { bits } } # [ doc = "Bits 24:27 - Date units or day in BCD format" ] # [ inline ( always ) ] pub fn du ( & self ) -> DuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DuR { bits } } # [ doc = "Bit 23 - Alarm A hours mask" ] # [ inline ( always ) ] pub fn msk3 ( & self ) -> Msk3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk3R { bits } } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & self ) -> PmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmR { bits } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & self ) -> HtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtR { bits } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & self ) -> HuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HuR { bits } } # [ doc = "Bit 15 - Alarm A minutes mask" ] # [ inline ( always ) ] pub fn msk2 ( & self ) -> Msk2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk2R { bits } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & self ) -> MntR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MntR { bits } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & self ) -> MnuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MnuR { bits } } # [ doc = "Bit 7 - Alarm A seconds mask" ] # [ inline ( always ) ] pub fn msk1 ( & self ) -> Msk1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk1R { bits } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & self ) -> StR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StR { bits } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & self ) -> SuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SuR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Alarm A date mask" ] # [ inline ( always ) ] pub fn msk4 ( & mut self ) -> _Msk4W { _Msk4W { w : self } } # [ doc = "Bit 30 - Week day selection" ] # [ inline ( always ) ] pub fn wdsel ( & mut self ) -> _WdselW { _WdselW { w : self } } # [ doc = "Bits 28:29 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & mut self ) -> _DtW { _DtW { w : self } } # [ doc = "Bits 24:27 - Date units or day in BCD format" ] # [ inline ( always ) ] pub fn du ( & mut self ) -> _DuW { _DuW { w : self } } # [ doc = "Bit 23 - Alarm A hours mask" ] # [ inline ( always ) ] pub fn msk3 ( & mut self ) -> _Msk3W { _Msk3W { w : self } } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & mut self ) -> _PmW { _PmW { w : self } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & mut self ) -> _HtW { _HtW { w : self } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & mut self ) -> _HuW { _HuW { w : self } } # [ doc = "Bit 15 - Alarm A minutes mask" ] # [ inline ( always ) ] pub fn msk2 ( & mut self ) -> _Msk2W { _Msk2W { w : self } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & mut self ) -> _MntW { _MntW { w : self } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & mut self ) -> _MnuW { _MnuW { w : self } } # [ doc = "Bit 7 - Alarm A seconds mask" ] # [ inline ( always ) ] pub fn msk1 ( & mut self ) -> _Msk1W { _Msk1W { w : self } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & mut self ) -> _StW { _StW { w : self } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & mut self ) -> _SuW { _SuW { w : self } } } } # [ doc = "alarm B register" ] pub struct Alrmbr { register : VolatileCell < u32 > } # [ doc = "alarm B register" ] pub mod alrmbr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Alrmbr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Msk4R { bits : u8 , } impl Msk4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WdselR { bits : u8 , } impl WdselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtR { bits : u8 , } impl DtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DuR { bits : u8 , } impl DuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk3R { bits : u8 , } impl Msk3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PmR { bits : u8 , } impl PmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HtR { bits : u8 , } impl HtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HuR { bits : u8 , } impl HuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk2R { bits : u8 , } impl Msk2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MntR { bits : u8 , } impl MntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MnuR { bits : u8 , } impl MnuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Msk1R { bits : u8 , } impl Msk1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StR { bits : u8 , } impl StR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SuR { bits : u8 , } impl SuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Msk4W < 'a > { w : & 'a mut W , } impl < 'a > _Msk4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WdselW < 'a > { w : & 'a mut W , } impl < 'a > _WdselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtW < 'a > { w : & 'a mut W , } impl < 'a > _DtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DuW < 'a > { w : & 'a mut W , } impl < 'a > _DuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk3W < 'a > { w : & 'a mut W , } impl < 'a > _Msk3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PmW < 'a > { w : & 'a mut W , } impl < 'a > _PmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HtW < 'a > { w : & 'a mut W , } impl < 'a > _HtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HuW < 'a > { w : & 'a mut W , } impl < 'a > _HuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk2W < 'a > { w : & 'a mut W , } impl < 'a > _Msk2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MntW < 'a > { w : & 'a mut W , } impl < 'a > _MntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MnuW < 'a > { w : & 'a mut W , } impl < 'a > _MnuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Msk1W < 'a > { w : & 'a mut W , } impl < 'a > _Msk1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StW < 'a > { w : & 'a mut W , } impl < 'a > _StW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SuW < 'a > { w : & 'a mut W , } impl < 'a > _SuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - Alarm B date mask" ] # [ inline ( always ) ] pub fn msk4 ( & self ) -> Msk4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk4R { bits } } # [ doc = "Bit 30 - Week day selection" ] # [ inline ( always ) ] pub fn wdsel ( & self ) -> WdselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdselR { bits } } # [ doc = "Bits 28:29 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & self ) -> DtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtR { bits } } # [ doc = "Bits 24:27 - Date units or day in BCD format" ] # [ inline ( always ) ] pub fn du ( & self ) -> DuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DuR { bits } } # [ doc = "Bit 23 - Alarm B hours mask" ] # [ inline ( always ) ] pub fn msk3 ( & self ) -> Msk3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk3R { bits } } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & self ) -> PmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmR { bits } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & self ) -> HtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HtR { bits } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & self ) -> HuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HuR { bits } } # [ doc = "Bit 15 - Alarm B minutes mask" ] # [ inline ( always ) ] pub fn msk2 ( & self ) -> Msk2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk2R { bits } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & self ) -> MntR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MntR { bits } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & self ) -> MnuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MnuR { bits } } # [ doc = "Bit 7 - Alarm B seconds mask" ] # [ inline ( always ) ] pub fn msk1 ( & self ) -> Msk1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Msk1R { bits } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & self ) -> StR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StR { bits } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & self ) -> SuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SuR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Alarm B date mask" ] # [ inline ( always ) ] pub fn msk4 ( & mut self ) -> _Msk4W { _Msk4W { w : self } } # [ doc = "Bit 30 - Week day selection" ] # [ inline ( always ) ] pub fn wdsel ( & mut self ) -> _WdselW { _WdselW { w : self } } # [ doc = "Bits 28:29 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & mut self ) -> _DtW { _DtW { w : self } } # [ doc = "Bits 24:27 - Date units or day in BCD format" ] # [ inline ( always ) ] pub fn du ( & mut self ) -> _DuW { _DuW { w : self } } # [ doc = "Bit 23 - Alarm B hours mask" ] # [ inline ( always ) ] pub fn msk3 ( & mut self ) -> _Msk3W { _Msk3W { w : self } } # [ doc = "Bit 22 - AM/PM notation" ] # [ inline ( always ) ] pub fn pm ( & mut self ) -> _PmW { _PmW { w : self } } # [ doc = "Bits 20:21 - Hour tens in BCD format" ] # [ inline ( always ) ] pub fn ht ( & mut self ) -> _HtW { _HtW { w : self } } # [ doc = "Bits 16:19 - Hour units in BCD format" ] # [ inline ( always ) ] pub fn hu ( & mut self ) -> _HuW { _HuW { w : self } } # [ doc = "Bit 15 - Alarm B minutes mask" ] # [ inline ( always ) ] pub fn msk2 ( & mut self ) -> _Msk2W { _Msk2W { w : self } } # [ doc = "Bits 12:14 - Minute tens in BCD format" ] # [ inline ( always ) ] pub fn mnt ( & mut self ) -> _MntW { _MntW { w : self } } # [ doc = "Bits 8:11 - Minute units in BCD format" ] # [ inline ( always ) ] pub fn mnu ( & mut self ) -> _MnuW { _MnuW { w : self } } # [ doc = "Bit 7 - Alarm B seconds mask" ] # [ inline ( always ) ] pub fn msk1 ( & mut self ) -> _Msk1W { _Msk1W { w : self } } # [ doc = "Bits 4:6 - Second tens in BCD format" ] # [ inline ( always ) ] pub fn st ( & mut self ) -> _StW { _StW { w : self } } # [ doc = "Bits 0:3 - Second units in BCD format" ] # [ inline ( always ) ] pub fn su ( & mut self ) -> _SuW { _SuW { w : self } } } } # [ doc = "write protection register" ] pub struct Wpr { register : VolatileCell < u32 > } # [ doc = "write protection register" ] pub mod wpr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Wpr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _KeyW < 'a > { w : & 'a mut W , } impl < 'a > _KeyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - Write protection key" ] # [ inline ( always ) ] pub fn key ( & mut self ) -> _KeyW { _KeyW { w : self } } } } # [ doc = "sub second register" ] pub struct Ssr { register : VolatileCell < u32 > } # [ doc = "sub second register" ] pub mod ssr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ssr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct SsR { bits : u16 , } impl SsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Sub second value" ] # [ inline ( always ) ] pub fn ss ( & self ) -> SsR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; SsR { bits } } } } # [ doc = "shift control register" ] pub struct Shiftr { register : VolatileCell < u32 > } # [ doc = "shift control register" ] pub mod shiftr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Shiftr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Add1sW < 'a > { w : & 'a mut W , } impl < 'a > _Add1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SubfsW < 'a > { w : & 'a mut W , } impl < 'a > _SubfsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - Add one second" ] # [ inline ( always ) ] pub fn add1s ( & mut self ) -> _Add1sW { _Add1sW { w : self } } # [ doc = "Bits 0:14 - Subtract a fraction of a second" ] # [ inline ( always ) ] pub fn subfs ( & mut self ) -> _SubfsW { _SubfsW { w : self } } } } # [ doc = "time stamp time register" ] pub struct Tstr { register : VolatileCell < u32 > } # [ doc = "time stamp time register" ] pub mod tstr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Tstr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct AlarmouttypeR { bits : u8 , } impl AlarmouttypeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsinselR { bits : u8 , } impl TsinselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1inselR { bits : u8 , } impl Tamp1inselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TampieR { bits : u8 , } impl TampieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1trgR { bits : u8 , } impl Tamp1trgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1eR { bits : u8 , } impl Tamp1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 18 - AFO_ALARM output type" ] # [ inline ( always ) ] pub fn alarmouttype ( & self ) -> AlarmouttypeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlarmouttypeR { bits } } # [ doc = "Bit 17 - TIMESTAMP mapping" ] # [ inline ( always ) ] pub fn tsinsel ( & self ) -> TsinselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsinselR { bits } } # [ doc = "Bit 16 - TAMPER1 mapping" ] # [ inline ( always ) ] pub fn tamp1insel ( & self ) -> Tamp1inselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1inselR { bits } } # [ doc = "Bit 2 - Tamper interrupt enable" ] # [ inline ( always ) ] pub fn tampie ( & self ) -> TampieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TampieR { bits } } # [ doc = "Bit 1 - Active level for tamper 1" ] # [ inline ( always ) ] pub fn tamp1trg ( & self ) -> Tamp1trgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1trgR { bits } } # [ doc = "Bit 0 - Tamper 1 detection enable" ] # [ inline ( always ) ] pub fn tamp1e ( & self ) -> Tamp1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1eR { bits } } } } # [ doc = "time stamp date register" ] pub struct Tsdr { register : VolatileCell < u32 > } # [ doc = "time stamp date register" ] pub mod tsdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Tsdr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct WduR { bits : u8 , } impl WduR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MtR { bits : u8 , } impl MtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MuR { bits : u8 , } impl MuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtR { bits : u8 , } impl DtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DuR { bits : u8 , } impl DuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 13:15 - Week day units" ] # [ inline ( always ) ] pub fn wdu ( & self ) -> WduR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WduR { bits } } # [ doc = "Bit 12 - Month tens in BCD format" ] # [ inline ( always ) ] pub fn mt ( & self ) -> MtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MtR { bits } } # [ doc = "Bits 8:11 - Month units in BCD format" ] # [ inline ( always ) ] pub fn mu ( & self ) -> MuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MuR { bits } } # [ doc = "Bits 4:5 - Date tens in BCD format" ] # [ inline ( always ) ] pub fn dt ( & self ) -> DtR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtR { bits } } # [ doc = "Bits 0:3 - Date units in BCD format" ] # [ inline ( always ) ] pub fn du ( & self ) -> DuR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DuR { bits } } } } # [ doc = "timestamp sub second register" ] pub struct Tsssr { register : VolatileCell < u32 > } # [ doc = "timestamp sub second register" ] pub mod tsssr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Tsssr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct SsR { bits : u16 , } impl SsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Sub second value" ] # [ inline ( always ) ] pub fn ss ( & self ) -> SsR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; SsR { bits } } } } # [ doc = "calibration register" ] pub struct Calr { register : VolatileCell < u32 > } # [ doc = "calibration register" ] pub mod calr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Calr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CalpR { bits : u8 , } impl CalpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Calw8R { bits : u8 , } impl Calw8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Calw16R { bits : u8 , } impl Calw16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CalmR { bits : u16 , } impl CalmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CalpW < 'a > { w : & 'a mut W , } impl < 'a > _CalpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Calw8W < 'a > { w : & 'a mut W , } impl < 'a > _Calw8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Calw16W < 'a > { w : & 'a mut W , } impl < 'a > _Calw16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CalmW < 'a > { w : & 'a mut W , } impl < 'a > _CalmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Increase frequency of RTC by 488.5 ppm" ] # [ inline ( always ) ] pub fn calp ( & self ) -> CalpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CalpR { bits } } # [ doc = "Bit 14 - Use an 8-second calibration cycle period" ] # [ inline ( always ) ] pub fn calw8 ( & self ) -> Calw8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Calw8R { bits } } # [ doc = "Bit 13 - Use a 16-second calibration cycle period" ] # [ inline ( always ) ] pub fn calw16 ( & self ) -> Calw16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Calw16R { bits } } # [ doc = "Bits 0:8 - Calibration minus" ] # [ inline ( always ) ] pub fn calm ( & self ) -> CalmR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CalmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Increase frequency of RTC by 488.5 ppm" ] # [ inline ( always ) ] pub fn calp ( & mut self ) -> _CalpW { _CalpW { w : self } } # [ doc = "Bit 14 - Use an 8-second calibration cycle period" ] # [ inline ( always ) ] pub fn calw8 ( & mut self ) -> _Calw8W { _Calw8W { w : self } } # [ doc = "Bit 13 - Use a 16-second calibration cycle period" ] # [ inline ( always ) ] pub fn calw16 ( & mut self ) -> _Calw16W { _Calw16W { w : self } } # [ doc = "Bits 0:8 - Calibration minus" ] # [ inline ( always ) ] pub fn calm ( & mut self ) -> _CalmW { _CalmW { w : self } } } } # [ doc = "tamper and alternate function configuration register" ] pub struct Tafcr { register : VolatileCell < u32 > } # [ doc = "tamper and alternate function configuration register" ] pub mod tafcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tafcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct AlarmouttypeR { bits : u8 , } impl AlarmouttypeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsinselR { bits : u8 , } impl TsinselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1inselR { bits : u8 , } impl Tamp1inselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TamppudisR { bits : u8 , } impl TamppudisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TampprchR { bits : u8 , } impl TampprchR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TampfltR { bits : u8 , } impl TampfltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TampfreqR { bits : u8 , } impl TampfreqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TamptsR { bits : u8 , } impl TamptsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp2trgR { bits : u8 , } impl Tamp2trgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp2eR { bits : u8 , } impl Tamp2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TampieR { bits : u8 , } impl TampieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1trgR { bits : u8 , } impl Tamp1trgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tamp1eR { bits : u8 , } impl Tamp1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _AlarmouttypeW < 'a > { w : & 'a mut W , } impl < 'a > _AlarmouttypeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsinselW < 'a > { w : & 'a mut W , } impl < 'a > _TsinselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp1inselW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp1inselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TamppudisW < 'a > { w : & 'a mut W , } impl < 'a > _TamppudisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TampprchW < 'a > { w : & 'a mut W , } impl < 'a > _TampprchW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TampfltW < 'a > { w : & 'a mut W , } impl < 'a > _TampfltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TampfreqW < 'a > { w : & 'a mut W , } impl < 'a > _TampfreqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TamptsW < 'a > { w : & 'a mut W , } impl < 'a > _TamptsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp2trgW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp2trgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp2eW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TampieW < 'a > { w : & 'a mut W , } impl < 'a > _TampieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp1trgW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp1trgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tamp1eW < 'a > { w : & 'a mut W , } impl < 'a > _Tamp1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 18 - AFO_ALARM output type" ] # [ inline ( always ) ] pub fn alarmouttype ( & self ) -> AlarmouttypeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AlarmouttypeR { bits } } # [ doc = "Bit 17 - TIMESTAMP mapping" ] # [ inline ( always ) ] pub fn tsinsel ( & self ) -> TsinselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsinselR { bits } } # [ doc = "Bit 16 - TAMPER1 mapping" ] # [ inline ( always ) ] pub fn tamp1insel ( & self ) -> Tamp1inselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1inselR { bits } } # [ doc = "Bit 15 - TAMPER pull-up disable" ] # [ inline ( always ) ] pub fn tamppudis ( & self ) -> TamppudisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TamppudisR { bits } } # [ doc = "Bits 13:14 - Tamper precharge duration" ] # [ inline ( always ) ] pub fn tampprch ( & self ) -> TampprchR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TampprchR { bits } } # [ doc = "Bits 11:12 - Tamper filter count" ] # [ inline ( always ) ] pub fn tampflt ( & self ) -> TampfltR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TampfltR { bits } } # [ doc = "Bits 8:10 - Tamper sampling frequency" ] # [ inline ( always ) ] pub fn tampfreq ( & self ) -> TampfreqR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TampfreqR { bits } } # [ doc = "Bit 7 - Activate timestamp on tamper detection event" ] # [ inline ( always ) ] pub fn tampts ( & self ) -> TamptsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TamptsR { bits } } # [ doc = "Bit 4 - Active level for tamper 2" ] # [ inline ( always ) ] pub fn tamp2trg ( & self ) -> Tamp2trgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp2trgR { bits } } # [ doc = "Bit 3 - Tamper 2 detection enable" ] # [ inline ( always ) ] pub fn tamp2e ( & self ) -> Tamp2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp2eR { bits } } # [ doc = "Bit 2 - Tamper interrupt enable" ] # [ inline ( always ) ] pub fn tampie ( & self ) -> TampieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TampieR { bits } } # [ doc = "Bit 1 - Active level for tamper 1" ] # [ inline ( always ) ] pub fn tamp1trg ( & self ) -> Tamp1trgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1trgR { bits } } # [ doc = "Bit 0 - Tamper 1 detection enable" ] # [ inline ( always ) ] pub fn tamp1e ( & self ) -> Tamp1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tamp1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 18 - AFO_ALARM output type" ] # [ inline ( always ) ] pub fn alarmouttype ( & mut self ) -> _AlarmouttypeW { _AlarmouttypeW { w : self } } # [ doc = "Bit 17 - TIMESTAMP mapping" ] # [ inline ( always ) ] pub fn tsinsel ( & mut self ) -> _TsinselW { _TsinselW { w : self } } # [ doc = "Bit 16 - TAMPER1 mapping" ] # [ inline ( always ) ] pub fn tamp1insel ( & mut self ) -> _Tamp1inselW { _Tamp1inselW { w : self } } # [ doc = "Bit 15 - TAMPER pull-up disable" ] # [ inline ( always ) ] pub fn tamppudis ( & mut self ) -> _TamppudisW { _TamppudisW { w : self } } # [ doc = "Bits 13:14 - Tamper precharge duration" ] # [ inline ( always ) ] pub fn tampprch ( & mut self ) -> _TampprchW { _TampprchW { w : self } } # [ doc = "Bits 11:12 - Tamper filter count" ] # [ inline ( always ) ] pub fn tampflt ( & mut self ) -> _TampfltW { _TampfltW { w : self } } # [ doc = "Bits 8:10 - Tamper sampling frequency" ] # [ inline ( always ) ] pub fn tampfreq ( & mut self ) -> _TampfreqW { _TampfreqW { w : self } } # [ doc = "Bit 7 - Activate timestamp on tamper detection event" ] # [ inline ( always ) ] pub fn tampts ( & mut self ) -> _TamptsW { _TamptsW { w : self } } # [ doc = "Bit 4 - Active level for tamper 2" ] # [ inline ( always ) ] pub fn tamp2trg ( & mut self ) -> _Tamp2trgW { _Tamp2trgW { w : self } } # [ doc = "Bit 3 - Tamper 2 detection enable" ] # [ inline ( always ) ] pub fn tamp2e ( & mut self ) -> _Tamp2eW { _Tamp2eW { w : self } } # [ doc = "Bit 2 - Tamper interrupt enable" ] # [ inline ( always ) ] pub fn tampie ( & mut self ) -> _TampieW { _TampieW { w : self } } # [ doc = "Bit 1 - Active level for tamper 1" ] # [ inline ( always ) ] pub fn tamp1trg ( & mut self ) -> _Tamp1trgW { _Tamp1trgW { w : self } } # [ doc = "Bit 0 - Tamper 1 detection enable" ] # [ inline ( always ) ] pub fn tamp1e ( & mut self ) -> _Tamp1eW { _Tamp1eW { w : self } } } } # [ doc = "alarm A sub second register" ] pub struct Alrmassr { register : VolatileCell < u32 > } # [ doc = "alarm A sub second register" ] pub mod alrmassr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Alrmassr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MaskssR { bits : u8 , } impl MaskssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SsR { bits : u16 , } impl SsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _MaskssW < 'a > { w : & 'a mut W , } impl < 'a > _MaskssW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SsW < 'a > { w : & 'a mut W , } impl < 'a > _SsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ] # [ inline ( always ) ] pub fn maskss ( & self ) -> MaskssR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MaskssR { bits } } # [ doc = "Bits 0:14 - Sub seconds value" ] # [ inline ( always ) ] pub fn ss ( & self ) -> SsR { let bits = { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; SsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ] # [ inline ( always ) ] pub fn maskss ( & mut self ) -> _MaskssW { _MaskssW { w : self } } # [ doc = "Bits 0:14 - Sub seconds value" ] # [ inline ( always ) ] pub fn ss ( & mut self ) -> _SsW { _SsW { w : self } } } } # [ doc = "alarm B sub second register" ] pub struct Alrmbssr { register : VolatileCell < u32 > } # [ doc = "alarm B sub second register" ] pub mod alrmbssr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Alrmbssr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MaskssR { bits : u8 , } impl MaskssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SsR { bits : u16 , } impl SsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _MaskssW < 'a > { w : & 'a mut W , } impl < 'a > _MaskssW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SsW < 'a > { w : & 'a mut W , } impl < 'a > _SsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ] # [ inline ( always ) ] pub fn maskss ( & self ) -> MaskssR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MaskssR { bits } } # [ doc = "Bits 0:14 - Sub seconds value" ] # [ inline ( always ) ] pub fn ss ( & self ) -> SsR { let bits = { const MASK : u16 = 32767 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; SsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ] # [ inline ( always ) ] pub fn maskss ( & mut self ) -> _MaskssW { _MaskssW { w : self } } # [ doc = "Bits 0:14 - Sub seconds value" ] # [ inline ( always ) ] pub fn ss ( & mut self ) -> _SsW { _SsW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp0r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp1r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp2r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp2r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp2r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp3r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp3r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp3r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp4r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp4r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp4r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp5r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp5r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp5r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp6r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp6r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp6r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp7r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp7r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp7r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp8r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp8r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp8r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp9r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp9r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp9r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp10r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp10r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp10r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp11r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp11r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp11r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp12r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp12r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp12r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp13r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp13r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp13r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp14r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp14r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp14r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp15r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp15r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp15r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp16r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp16r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp16r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp17r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp17r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp17r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp18r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp18r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp18r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } # [ doc = "backup register" ] pub struct Bkp19r { register : VolatileCell < u32 > } # [ doc = "backup register" ] pub mod bkp19r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bkp19r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u32 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; BkpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - BKP" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } } } } # [ doc = "Real-time clock" ] pub struct Rtc { register_block : rtc :: RegisterBlock } impl Deref for Rtc { type Target = rtc :: RegisterBlock ; fn deref ( & self ) -> & rtc :: RegisterBlock { & self . register_block } } # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub const UART4 : Peripheral < Uart4 > = unsafe { Peripheral :: new ( 1073761280 ) } ; # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub mod uart4 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Status register" ] pub sr : Sr , # [ doc = "0x04 - Data register" ] pub dr : Dr , # [ doc = "0x08 - Baud rate register" ] pub brr : Brr , # [ doc = "0x0c - Control register 1" ] pub cr1 : Cr1 , # [ doc = "0x10 - Control register 2" ] pub cr2 : Cr2 , # [ doc = "0x14 - Control register 3" ] pub cr3 : Cr3 , } # [ doc = "Status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "Status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LbdR { bits : u8 , } impl LbdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxeR { bits : u8 , } impl TxeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcR { bits : u8 , } impl TcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxneR { bits : u8 , } impl RxneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdleR { bits : u8 , } impl IdleR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OreR { bits : u8 , } impl OreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NfR { bits : u8 , } impl NfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FeR { bits : u8 , } impl FeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PeR { bits : u8 , } impl PeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LbdW < 'a > { w : & 'a mut W , } impl < 'a > _LbdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcW < 'a > { w : & 'a mut W , } impl < 'a > _TcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxneW < 'a > { w : & 'a mut W , } impl < 'a > _RxneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 8 - LIN break detection flag" ] # [ inline ( always ) ] pub fn lbd ( & self ) -> LbdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbdR { bits } } # [ doc = "Bit 7 - Transmit data register empty" ] # [ inline ( always ) ] pub fn txe ( & self ) -> TxeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxeR { bits } } # [ doc = "Bit 6 - Transmission complete" ] # [ inline ( always ) ] pub fn tc ( & self ) -> TcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcR { bits } } # [ doc = "Bit 5 - Read data register not empty" ] # [ inline ( always ) ] pub fn rxne ( & self ) -> RxneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxneR { bits } } # [ doc = "Bit 4 - IDLE line detected" ] # [ inline ( always ) ] pub fn idle ( & self ) -> IdleR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdleR { bits } } # [ doc = "Bit 3 - Overrun error" ] # [ inline ( always ) ] pub fn ore ( & self ) -> OreR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OreR { bits } } # [ doc = "Bit 2 - Noise detected flag" ] # [ inline ( always ) ] pub fn nf ( & self ) -> NfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NfR { bits } } # [ doc = "Bit 1 - Framing error" ] # [ inline ( always ) ] pub fn fe ( & self ) -> FeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FeR { bits } } # [ doc = "Bit 0 - Parity error" ] # [ inline ( always ) ] pub fn pe ( & self ) -> PeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 12582912 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 8 - LIN break detection flag" ] # [ inline ( always ) ] pub fn lbd ( & mut self ) -> _LbdW { _LbdW { w : self } } # [ doc = "Bit 6 - Transmission complete" ] # [ inline ( always ) ] pub fn tc ( & mut self ) -> _TcW { _TcW { w : self } } # [ doc = "Bit 5 - Read data register not empty" ] # [ inline ( always ) ] pub fn rxne ( & mut self ) -> _RxneW { _RxneW { w : self } } } } # [ doc = "Data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "Data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DrR { bits : u16 , } impl DrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DrW < 'a > { w : & 'a mut W , } impl < 'a > _DrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:8 - Data value" ] # [ inline ( always ) ] pub fn dr ( & self ) -> DrR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:8 - Data value" ] # [ inline ( always ) ] pub fn dr ( & mut self ) -> _DrW { _DrW { w : self } } } } # [ doc = "Baud rate register" ] pub struct Brr { register : VolatileCell < u32 > } # [ doc = "Baud rate register" ] pub mod brr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Brr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DivMantissaR { bits : u16 , } impl DivMantissaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DivFractionR { bits : u8 , } impl DivFractionR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DivMantissaW < 'a > { w : & 'a mut W , } impl < 'a > _DivMantissaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DivFractionW < 'a > { w : & 'a mut W , } impl < 'a > _DivFractionW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:15 - mantissa of USARTDIV" ] # [ inline ( always ) ] pub fn div_mantissa ( & self ) -> DivMantissaR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DivMantissaR { bits } } # [ doc = "Bits 0:3 - fraction of USARTDIV" ] # [ inline ( always ) ] pub fn div_fraction ( & self ) -> DivFractionR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DivFractionR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:15 - mantissa of USARTDIV" ] # [ inline ( always ) ] pub fn div_mantissa ( & mut self ) -> _DivMantissaW { _DivMantissaW { w : self } } # [ doc = "Bits 0:3 - fraction of USARTDIV" ] # [ inline ( always ) ] pub fn div_fraction ( & mut self ) -> _DivFractionW { _DivFractionW { w : self } } } } # [ doc = "Control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "Control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Over8R { bits : u8 , } impl Over8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UeR { bits : u8 , } impl UeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MR { bits : u8 , } impl MR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WakeR { bits : u8 , } impl WakeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PceR { bits : u8 , } impl PceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsR { bits : u8 , } impl PsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PeieR { bits : u8 , } impl PeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxeieR { bits : u8 , } impl TxeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TcieR { bits : u8 , } impl TcieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxneieR { bits : u8 , } impl RxneieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdleieR { bits : u8 , } impl IdleieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeR { bits : u8 , } impl TeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ReR { bits : u8 , } impl ReR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwuR { bits : u8 , } impl RwuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SbkR { bits : u8 , } impl SbkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Over8W < 'a > { w : & 'a mut W , } impl < 'a > _Over8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UeW < 'a > { w : & 'a mut W , } impl < 'a > _UeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MW < 'a > { w : & 'a mut W , } impl < 'a > _MW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WakeW < 'a > { w : & 'a mut W , } impl < 'a > _WakeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PceW < 'a > { w : & 'a mut W , } impl < 'a > _PceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsW < 'a > { w : & 'a mut W , } impl < 'a > _PsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PeieW < 'a > { w : & 'a mut W , } impl < 'a > _PeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxeieW < 'a > { w : & 'a mut W , } impl < 'a > _TxeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TcieW < 'a > { w : & 'a mut W , } impl < 'a > _TcieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxneieW < 'a > { w : & 'a mut W , } impl < 'a > _RxneieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IdleieW < 'a > { w : & 'a mut W , } impl < 'a > _IdleieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeW < 'a > { w : & 'a mut W , } impl < 'a > _TeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ReW < 'a > { w : & 'a mut W , } impl < 'a > _ReW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwuW < 'a > { w : & 'a mut W , } impl < 'a > _RwuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SbkW < 'a > { w : & 'a mut W , } impl < 'a > _SbkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Oversampling mode" ] # [ inline ( always ) ] pub fn over8 ( & self ) -> Over8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Over8R { bits } } # [ doc = "Bit 13 - USART enable" ] # [ inline ( always ) ] pub fn ue ( & self ) -> UeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UeR { bits } } # [ doc = "Bit 12 - Word length" ] # [ inline ( always ) ] pub fn m ( & self ) -> MR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MR { bits } } # [ doc = "Bit 11 - Wakeup method" ] # [ inline ( always ) ] pub fn wake ( & self ) -> WakeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WakeR { bits } } # [ doc = "Bit 10 - Parity control enable" ] # [ inline ( always ) ] pub fn pce ( & self ) -> PceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PceR { bits } } # [ doc = "Bit 9 - Parity selection" ] # [ inline ( always ) ] pub fn ps ( & self ) -> PsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsR { bits } } # [ doc = "Bit 8 - PE interrupt enable" ] # [ inline ( always ) ] pub fn peie ( & self ) -> PeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PeieR { bits } } # [ doc = "Bit 7 - TXE interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & self ) -> TxeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxeieR { bits } } # [ doc = "Bit 6 - Transmission complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & self ) -> TcieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TcieR { bits } } # [ doc = "Bit 5 - RXNE interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & self ) -> RxneieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxneieR { bits } } # [ doc = "Bit 4 - IDLE interrupt enable" ] # [ inline ( always ) ] pub fn idleie ( & self ) -> IdleieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdleieR { bits } } # [ doc = "Bit 3 - Transmitter enable" ] # [ inline ( always ) ] pub fn te ( & self ) -> TeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeR { bits } } # [ doc = "Bit 2 - Receiver enable" ] # [ inline ( always ) ] pub fn re ( & self ) -> ReR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ReR { bits } } # [ doc = "Bit 1 - Receiver wakeup" ] # [ inline ( always ) ] pub fn rwu ( & self ) -> RwuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwuR { bits } } # [ doc = "Bit 0 - Send break" ] # [ inline ( always ) ] pub fn sbk ( & self ) -> SbkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SbkR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Oversampling mode" ] # [ inline ( always ) ] pub fn over8 ( & mut self ) -> _Over8W { _Over8W { w : self } } # [ doc = "Bit 13 - USART enable" ] # [ inline ( always ) ] pub fn ue ( & mut self ) -> _UeW { _UeW { w : self } } # [ doc = "Bit 12 - Word length" ] # [ inline ( always ) ] pub fn m ( & mut self ) -> _MW { _MW { w : self } } # [ doc = "Bit 11 - Wakeup method" ] # [ inline ( always ) ] pub fn wake ( & mut self ) -> _WakeW { _WakeW { w : self } } # [ doc = "Bit 10 - Parity control enable" ] # [ inline ( always ) ] pub fn pce ( & mut self ) -> _PceW { _PceW { w : self } } # [ doc = "Bit 9 - Parity selection" ] # [ inline ( always ) ] pub fn ps ( & mut self ) -> _PsW { _PsW { w : self } } # [ doc = "Bit 8 - PE interrupt enable" ] # [ inline ( always ) ] pub fn peie ( & mut self ) -> _PeieW { _PeieW { w : self } } # [ doc = "Bit 7 - TXE interrupt enable" ] # [ inline ( always ) ] pub fn txeie ( & mut self ) -> _TxeieW { _TxeieW { w : self } } # [ doc = "Bit 6 - Transmission complete interrupt enable" ] # [ inline ( always ) ] pub fn tcie ( & mut self ) -> _TcieW { _TcieW { w : self } } # [ doc = "Bit 5 - RXNE interrupt enable" ] # [ inline ( always ) ] pub fn rxneie ( & mut self ) -> _RxneieW { _RxneieW { w : self } } # [ doc = "Bit 4 - IDLE interrupt enable" ] # [ inline ( always ) ] pub fn idleie ( & mut self ) -> _IdleieW { _IdleieW { w : self } } # [ doc = "Bit 3 - Transmitter enable" ] # [ inline ( always ) ] pub fn te ( & mut self ) -> _TeW { _TeW { w : self } } # [ doc = "Bit 2 - Receiver enable" ] # [ inline ( always ) ] pub fn re ( & mut self ) -> _ReW { _ReW { w : self } } # [ doc = "Bit 1 - Receiver wakeup" ] # [ inline ( always ) ] pub fn rwu ( & mut self ) -> _RwuW { _RwuW { w : self } } # [ doc = "Bit 0 - Send break" ] # [ inline ( always ) ] pub fn sbk ( & mut self ) -> _SbkW { _SbkW { w : self } } } } # [ doc = "Control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "Control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LinenR { bits : u8 , } impl LinenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StopR { bits : u8 , } impl StopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbdieR { bits : u8 , } impl LbdieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbdlR { bits : u8 , } impl LbdlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AddR { bits : u8 , } impl AddR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LinenW < 'a > { w : & 'a mut W , } impl < 'a > _LinenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StopW < 'a > { w : & 'a mut W , } impl < 'a > _StopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbdieW < 'a > { w : & 'a mut W , } impl < 'a > _LbdieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbdlW < 'a > { w : & 'a mut W , } impl < 'a > _LbdlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AddW < 'a > { w : & 'a mut W , } impl < 'a > _AddW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - LIN mode enable" ] # [ inline ( always ) ] pub fn linen ( & self ) -> LinenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LinenR { bits } } # [ doc = "Bits 12:13 - STOP bits" ] # [ inline ( always ) ] pub fn stop ( & self ) -> StopR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StopR { bits } } # [ doc = "Bit 6 - LIN break detection interrupt enable" ] # [ inline ( always ) ] pub fn lbdie ( & self ) -> LbdieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbdieR { bits } } # [ doc = "Bit 5 - lin break detection length" ] # [ inline ( always ) ] pub fn lbdl ( & self ) -> LbdlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbdlR { bits } } # [ doc = "Bits 0:3 - Address of the USART node" ] # [ inline ( always ) ] pub fn add ( & self ) -> AddR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AddR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - LIN mode enable" ] # [ inline ( always ) ] pub fn linen ( & mut self ) -> _LinenW { _LinenW { w : self } } # [ doc = "Bits 12:13 - STOP bits" ] # [ inline ( always ) ] pub fn stop ( & mut self ) -> _StopW { _StopW { w : self } } # [ doc = "Bit 6 - LIN break detection interrupt enable" ] # [ inline ( always ) ] pub fn lbdie ( & mut self ) -> _LbdieW { _LbdieW { w : self } } # [ doc = "Bit 5 - lin break detection length" ] # [ inline ( always ) ] pub fn lbdl ( & mut self ) -> _LbdlW { _LbdlW { w : self } } # [ doc = "Bits 0:3 - Address of the USART node" ] # [ inline ( always ) ] pub fn add ( & mut self ) -> _AddW { _AddW { w : self } } } } # [ doc = "Control register 3" ] pub struct Cr3 { register : VolatileCell < u32 > } # [ doc = "Control register 3" ] pub mod cr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OnebitR { bits : u8 , } impl OnebitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmatR { bits : u8 , } impl DmatR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmarR { bits : u8 , } impl DmarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HdselR { bits : u8 , } impl HdselR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrlpR { bits : u8 , } impl IrlpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IrenR { bits : u8 , } impl IrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EieR { bits : u8 , } impl EieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _OnebitW < 'a > { w : & 'a mut W , } impl < 'a > _OnebitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmatW < 'a > { w : & 'a mut W , } impl < 'a > _DmatW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmarW < 'a > { w : & 'a mut W , } impl < 'a > _DmarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HdselW < 'a > { w : & 'a mut W , } impl < 'a > _HdselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrlpW < 'a > { w : & 'a mut W , } impl < 'a > _IrlpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IrenW < 'a > { w : & 'a mut W , } impl < 'a > _IrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EieW < 'a > { w : & 'a mut W , } impl < 'a > _EieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 11 - One sample bit method enable" ] # [ inline ( always ) ] pub fn onebit ( & self ) -> OnebitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OnebitR { bits } } # [ doc = "Bit 7 - DMA enable transmitter" ] # [ inline ( always ) ] pub fn dmat ( & self ) -> DmatR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmatR { bits } } # [ doc = "Bit 6 - DMA enable receiver" ] # [ inline ( always ) ] pub fn dmar ( & self ) -> DmarR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmarR { bits } } # [ doc = "Bit 3 - Half-duplex selection" ] # [ inline ( always ) ] pub fn hdsel ( & self ) -> HdselR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HdselR { bits } } # [ doc = "Bit 2 - IrDA low-power" ] # [ inline ( always ) ] pub fn irlp ( & self ) -> IrlpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrlpR { bits } } # [ doc = "Bit 1 - IrDA mode enable" ] # [ inline ( always ) ] pub fn iren ( & self ) -> IrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IrenR { bits } } # [ doc = "Bit 0 - Error interrupt enable" ] # [ inline ( always ) ] pub fn eie ( & self ) -> EieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 11 - One sample bit method enable" ] # [ inline ( always ) ] pub fn onebit ( & mut self ) -> _OnebitW { _OnebitW { w : self } } # [ doc = "Bit 7 - DMA enable transmitter" ] # [ inline ( always ) ] pub fn dmat ( & mut self ) -> _DmatW { _DmatW { w : self } } # [ doc = "Bit 6 - DMA enable receiver" ] # [ inline ( always ) ] pub fn dmar ( & mut self ) -> _DmarW { _DmarW { w : self } } # [ doc = "Bit 3 - Half-duplex selection" ] # [ inline ( always ) ] pub fn hdsel ( & mut self ) -> _HdselW { _HdselW { w : self } } # [ doc = "Bit 2 - IrDA low-power" ] # [ inline ( always ) ] pub fn irlp ( & mut self ) -> _IrlpW { _IrlpW { w : self } } # [ doc = "Bit 1 - IrDA mode enable" ] # [ inline ( always ) ] pub fn iren ( & mut self ) -> _IrenW { _IrenW { w : self } } # [ doc = "Bit 0 - Error interrupt enable" ] # [ inline ( always ) ] pub fn eie ( & mut self ) -> _EieW { _EieW { w : self } } } } } # [ doc = "Universal synchronous asynchronous receiver transmitter" ] pub struct Uart4 { register_block : uart4 :: RegisterBlock } impl Deref for Uart4 { type Target = uart4 :: RegisterBlock ; fn deref ( & self ) -> & uart4 :: RegisterBlock { & self . register_block } } # [ doc = "UART5" ] pub const UART5 : Peripheral < Uart5 > = unsafe { Peripheral :: new ( 1073762304 ) } ; # [ doc = r" Register block" ] pub struct Uart5 { register_block : uart4 :: RegisterBlock } impl Deref for Uart5 { type Target = uart4 :: RegisterBlock ; fn deref ( & self ) -> & uart4 :: RegisterBlock { & self . register_block } } # [ doc = "Common ADC registers" ] pub const C_ADC : Peripheral < CAdc > = unsafe { Peripheral :: new ( 1073816320 ) } ; # [ doc = "Common ADC registers" ] pub mod c_adc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - ADC Common status register" ] pub csr : Csr , # [ doc = "0x04 - ADC common control register" ] pub ccr : Ccr , # [ doc = "0x08 - ADC common regular data register for dual and triple modes" ] pub cdr : Cdr , } # [ doc = "ADC Common status register" ] pub struct Csr { register : VolatileCell < u32 > } # [ doc = "ADC Common status register" ] pub mod csr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Csr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Ovr3R { bits : u8 , } impl Ovr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Strt3R { bits : u8 , } impl Strt3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jstrt3R { bits : u8 , } impl Jstrt3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jeoc3R { bits : u8 , } impl Jeoc3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Eoc3R { bits : u8 , } impl Eoc3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Awd3R { bits : u8 , } impl Awd3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ovr2R { bits : u8 , } impl Ovr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Strt2R { bits : u8 , } impl Strt2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jstrt2R { bits : u8 , } impl Jstrt2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jeoc2R { bits : u8 , } impl Jeoc2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Eoc2R { bits : u8 , } impl Eoc2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Awd2R { bits : u8 , } impl Awd2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ovr1R { bits : u8 , } impl Ovr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Strt1R { bits : u8 , } impl Strt1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jstrt1R { bits : u8 , } impl Jstrt1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Jeoc1R { bits : u8 , } impl Jeoc1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Eoc1R { bits : u8 , } impl Eoc1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Awd1R { bits : u8 , } impl Awd1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 21 - Overrun flag of ADC3" ] # [ inline ( always ) ] pub fn ovr3 ( & self ) -> Ovr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ovr3R { bits } } # [ doc = "Bit 20 - Regular channel Start flag of ADC 3" ] # [ inline ( always ) ] pub fn strt3 ( & self ) -> Strt3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Strt3R { bits } } # [ doc = "Bit 19 - Injected channel Start flag of ADC 3" ] # [ inline ( always ) ] pub fn jstrt3 ( & self ) -> Jstrt3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jstrt3R { bits } } # [ doc = "Bit 18 - Injected channel end of conversion of ADC 3" ] # [ inline ( always ) ] pub fn jeoc3 ( & self ) -> Jeoc3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jeoc3R { bits } } # [ doc = "Bit 17 - End of conversion of ADC 3" ] # [ inline ( always ) ] pub fn eoc3 ( & self ) -> Eoc3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Eoc3R { bits } } # [ doc = "Bit 16 - Analog watchdog flag of ADC 3" ] # [ inline ( always ) ] pub fn awd3 ( & self ) -> Awd3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Awd3R { bits } } # [ doc = "Bit 13 - Overrun flag of ADC 2" ] # [ inline ( always ) ] pub fn ovr2 ( & self ) -> Ovr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ovr2R { bits } } # [ doc = "Bit 12 - Regular channel Start flag of ADC 2" ] # [ inline ( always ) ] pub fn strt2 ( & self ) -> Strt2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Strt2R { bits } } # [ doc = "Bit 11 - Injected channel Start flag of ADC 2" ] # [ inline ( always ) ] pub fn jstrt2 ( & self ) -> Jstrt2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jstrt2R { bits } } # [ doc = "Bit 10 - Injected channel end of conversion of ADC 2" ] # [ inline ( always ) ] pub fn jeoc2 ( & self ) -> Jeoc2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jeoc2R { bits } } # [ doc = "Bit 9 - End of conversion of ADC 2" ] # [ inline ( always ) ] pub fn eoc2 ( & self ) -> Eoc2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Eoc2R { bits } } # [ doc = "Bit 8 - Analog watchdog flag of ADC 2" ] # [ inline ( always ) ] pub fn awd2 ( & self ) -> Awd2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Awd2R { bits } } # [ doc = "Bit 5 - Overrun flag of ADC 1" ] # [ inline ( always ) ] pub fn ovr1 ( & self ) -> Ovr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ovr1R { bits } } # [ doc = "Bit 4 - Regular channel Start flag of ADC 1" ] # [ inline ( always ) ] pub fn strt1 ( & self ) -> Strt1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Strt1R { bits } } # [ doc = "Bit 3 - Injected channel Start flag of ADC 1" ] # [ inline ( always ) ] pub fn jstrt1 ( & self ) -> Jstrt1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jstrt1R { bits } } # [ doc = "Bit 2 - Injected channel end of conversion of ADC 1" ] # [ inline ( always ) ] pub fn jeoc1 ( & self ) -> Jeoc1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Jeoc1R { bits } } # [ doc = "Bit 1 - End of conversion of ADC 1" ] # [ inline ( always ) ] pub fn eoc1 ( & self ) -> Eoc1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Eoc1R { bits } } # [ doc = "Bit 0 - Analog watchdog flag of ADC 1" ] # [ inline ( always ) ] pub fn awd1 ( & self ) -> Awd1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Awd1R { bits } } } } # [ doc = "ADC common control register" ] pub struct Ccr { register : VolatileCell < u32 > } # [ doc = "ADC common control register" ] pub mod ccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TsvrefeR { bits : u8 , } impl TsvrefeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VbateR { bits : u8 , } impl VbateR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AdcpreR { bits : u8 , } impl AdcpreR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmaR { bits : u8 , } impl DmaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DdsR { bits : u8 , } impl DdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DelayR { bits : u8 , } impl DelayR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MultR { bits : u8 , } impl MultR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TsvrefeW < 'a > { w : & 'a mut W , } impl < 'a > _TsvrefeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VbateW < 'a > { w : & 'a mut W , } impl < 'a > _VbateW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AdcpreW < 'a > { w : & 'a mut W , } impl < 'a > _AdcpreW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmaW < 'a > { w : & 'a mut W , } impl < 'a > _DmaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DdsW < 'a > { w : & 'a mut W , } impl < 'a > _DdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DelayW < 'a > { w : & 'a mut W , } impl < 'a > _DelayW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MultW < 'a > { w : & 'a mut W , } impl < 'a > _MultW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 23 - Temperature sensor and VREFINT enable" ] # [ inline ( always ) ] pub fn tsvrefe ( & self ) -> TsvrefeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsvrefeR { bits } } # [ doc = "Bit 22 - VBAT enable" ] # [ inline ( always ) ] pub fn vbate ( & self ) -> VbateR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VbateR { bits } } # [ doc = "Bits 16:17 - ADC prescaler" ] # [ inline ( always ) ] pub fn adcpre ( & self ) -> AdcpreR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AdcpreR { bits } } # [ doc = "Bits 14:15 - Direct memory access mode for multi ADC mode" ] # [ inline ( always ) ] pub fn dma ( & self ) -> DmaR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmaR { bits } } # [ doc = "Bit 13 - DMA disable selection for multi-ADC mode" ] # [ inline ( always ) ] pub fn dds ( & self ) -> DdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DdsR { bits } } # [ doc = "Bits 8:11 - Delay between 2 sampling phases" ] # [ inline ( always ) ] pub fn delay ( & self ) -> DelayR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DelayR { bits } } # [ doc = "Bits 0:4 - Multi ADC mode selection" ] # [ inline ( always ) ] pub fn mult ( & self ) -> MultR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MultR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - Temperature sensor and VREFINT enable" ] # [ inline ( always ) ] pub fn tsvrefe ( & mut self ) -> _TsvrefeW { _TsvrefeW { w : self } } # [ doc = "Bit 22 - VBAT enable" ] # [ inline ( always ) ] pub fn vbate ( & mut self ) -> _VbateW { _VbateW { w : self } } # [ doc = "Bits 16:17 - ADC prescaler" ] # [ inline ( always ) ] pub fn adcpre ( & mut self ) -> _AdcpreW { _AdcpreW { w : self } } # [ doc = "Bits 14:15 - Direct memory access mode for multi ADC mode" ] # [ inline ( always ) ] pub fn dma ( & mut self ) -> _DmaW { _DmaW { w : self } } # [ doc = "Bit 13 - DMA disable selection for multi-ADC mode" ] # [ inline ( always ) ] pub fn dds ( & mut self ) -> _DdsW { _DdsW { w : self } } # [ doc = "Bits 8:11 - Delay between 2 sampling phases" ] # [ inline ( always ) ] pub fn delay ( & mut self ) -> _DelayW { _DelayW { w : self } } # [ doc = "Bits 0:4 - Multi ADC mode selection" ] # [ inline ( always ) ] pub fn mult ( & mut self ) -> _MultW { _MultW { w : self } } } } # [ doc = "ADC common regular data register for dual and triple modes" ] pub struct Cdr { register : VolatileCell < u32 > } # [ doc = "ADC common regular data register for dual and triple modes" ] pub mod cdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Cdr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u16 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u16 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - 2nd data item of a pair of regular conversions" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Data2R { bits } } # [ doc = "Bits 0:15 - 1st data item of a pair of regular conversions" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Data1R { bits } } } } } # [ doc = "Common ADC registers" ] pub struct CAdc { register_block : c_adc :: RegisterBlock } impl Deref for CAdc { type Target = c_adc :: RegisterBlock ; fn deref ( & self ) -> & c_adc :: RegisterBlock { & self . register_block } } # [ doc = "Advanced-timers" ] pub const TIM1 : Peripheral < Tim1 > = unsafe { Peripheral :: new ( 1073807360 ) } ; # [ doc = "Advanced-timers" ] pub mod tim1 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - slave mode control register" ] pub smcr : Smcr , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ] pub ccmr2_output : Ccmr2Output , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , # [ doc = "0x30 - repetition counter register" ] pub rcr : Rcr , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , # [ doc = "0x38 - capture/compare register 2" ] pub ccr2 : Ccr2 , # [ doc = "0x3c - capture/compare register 3" ] pub ccr3 : Ccr3 , # [ doc = "0x40 - capture/compare register 4" ] pub ccr4 : Ccr4 , # [ doc = "0x44 - break and dead-time register" ] pub bdtr : Bdtr , # [ doc = "0x48 - DMA control register" ] pub dcr : Dcr , # [ doc = "0x4c - DMA address for full transfer" ] pub dmar : Dmar , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmsR { bits : u8 , } impl CmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmsW < 'a > { w : & 'a mut W , } impl < 'a > _CmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & self ) -> CmsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmsR { bits } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & mut self ) -> _CmsW { _CmsW { w : self } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ois4R { bits : u8 , } impl Ois4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois3nR { bits : u8 , } impl Ois3nR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois3R { bits : u8 , } impl Ois3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois2nR { bits : u8 , } impl Ois2nR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois2R { bits : u8 , } impl Ois2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois1nR { bits : u8 , } impl Ois1nR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ois1R { bits : u8 , } impl Ois1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ti1sR { bits : u8 , } impl Ti1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcdsR { bits : u8 , } impl CcdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcusR { bits : u8 , } impl CcusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcpcR { bits : u8 , } impl CcpcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ois4W < 'a > { w : & 'a mut W , } impl < 'a > _Ois4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois3nW < 'a > { w : & 'a mut W , } impl < 'a > _Ois3nW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois3W < 'a > { w : & 'a mut W , } impl < 'a > _Ois3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois2nW < 'a > { w : & 'a mut W , } impl < 'a > _Ois2nW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois2W < 'a > { w : & 'a mut W , } impl < 'a > _Ois2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois1nW < 'a > { w : & 'a mut W , } impl < 'a > _Ois1nW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ois1W < 'a > { w : & 'a mut W , } impl < 'a > _Ois1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ti1sW < 'a > { w : & 'a mut W , } impl < 'a > _Ti1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcdsW < 'a > { w : & 'a mut W , } impl < 'a > _CcdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcusW < 'a > { w : & 'a mut W , } impl < 'a > _CcusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcpcW < 'a > { w : & 'a mut W , } impl < 'a > _CcpcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - Output Idle state 4" ] # [ inline ( always ) ] pub fn ois4 ( & self ) -> Ois4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois4R { bits } } # [ doc = "Bit 13 - Output Idle state 3" ] # [ inline ( always ) ] pub fn ois3n ( & self ) -> Ois3nR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois3nR { bits } } # [ doc = "Bit 12 - Output Idle state 3" ] # [ inline ( always ) ] pub fn ois3 ( & self ) -> Ois3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois3R { bits } } # [ doc = "Bit 11 - Output Idle state 2" ] # [ inline ( always ) ] pub fn ois2n ( & self ) -> Ois2nR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois2nR { bits } } # [ doc = "Bit 10 - Output Idle state 2" ] # [ inline ( always ) ] pub fn ois2 ( & self ) -> Ois2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois2R { bits } } # [ doc = "Bit 9 - Output Idle state 1" ] # [ inline ( always ) ] pub fn ois1n ( & self ) -> Ois1nR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois1nR { bits } } # [ doc = "Bit 8 - Output Idle state 1" ] # [ inline ( always ) ] pub fn ois1 ( & self ) -> Ois1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ois1R { bits } } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & self ) -> Ti1sR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ti1sR { bits } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & self ) -> CcdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcdsR { bits } } # [ doc = "Bit 2 - Capture/compare control update selection" ] # [ inline ( always ) ] pub fn ccus ( & self ) -> CcusR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcusR { bits } } # [ doc = "Bit 0 - Capture/compare preloaded control" ] # [ inline ( always ) ] pub fn ccpc ( & self ) -> CcpcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcpcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - Output Idle state 4" ] # [ inline ( always ) ] pub fn ois4 ( & mut self ) -> _Ois4W { _Ois4W { w : self } } # [ doc = "Bit 13 - Output Idle state 3" ] # [ inline ( always ) ] pub fn ois3n ( & mut self ) -> _Ois3nW { _Ois3nW { w : self } } # [ doc = "Bit 12 - Output Idle state 3" ] # [ inline ( always ) ] pub fn ois3 ( & mut self ) -> _Ois3W { _Ois3W { w : self } } # [ doc = "Bit 11 - Output Idle state 2" ] # [ inline ( always ) ] pub fn ois2n ( & mut self ) -> _Ois2nW { _Ois2nW { w : self } } # [ doc = "Bit 10 - Output Idle state 2" ] # [ inline ( always ) ] pub fn ois2 ( & mut self ) -> _Ois2W { _Ois2W { w : self } } # [ doc = "Bit 9 - Output Idle state 1" ] # [ inline ( always ) ] pub fn ois1n ( & mut self ) -> _Ois1nW { _Ois1nW { w : self } } # [ doc = "Bit 8 - Output Idle state 1" ] # [ inline ( always ) ] pub fn ois1 ( & mut self ) -> _Ois1W { _Ois1W { w : self } } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & mut self ) -> _Ti1sW { _Ti1sW { w : self } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & mut self ) -> _CcdsW { _CcdsW { w : self } } # [ doc = "Bit 2 - Capture/compare control update selection" ] # [ inline ( always ) ] pub fn ccus ( & mut self ) -> _CcusW { _CcusW { w : self } } # [ doc = "Bit 0 - Capture/compare preloaded control" ] # [ inline ( always ) ] pub fn ccpc ( & mut self ) -> _CcpcW { _CcpcW { w : self } } } } # [ doc = "slave mode control register" ] pub struct Smcr { register : VolatileCell < u32 > } # [ doc = "slave mode control register" ] pub mod smcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EtpR { bits : u8 , } impl EtpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EceR { bits : u8 , } impl EceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtpsR { bits : u8 , } impl EtpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtfR { bits : u8 , } impl EtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsmR { bits : u8 , } impl MsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmsR { bits : u8 , } impl SmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EtpW < 'a > { w : & 'a mut W , } impl < 'a > _EtpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EceW < 'a > { w : & 'a mut W , } impl < 'a > _EceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtpsW < 'a > { w : & 'a mut W , } impl < 'a > _EtpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtfW < 'a > { w : & 'a mut W , } impl < 'a > _EtfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsmW < 'a > { w : & 'a mut W , } impl < 'a > _MsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmsW < 'a > { w : & 'a mut W , } impl < 'a > _SmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & self ) -> EtpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpR { bits } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & self ) -> EceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EceR { bits } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & self ) -> EtpsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpsR { bits } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & self ) -> EtfR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtfR { bits } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & self ) -> MsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsmR { bits } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & self ) -> SmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & mut self ) -> _EtpW { _EtpW { w : self } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & mut self ) -> _EceW { _EceW { w : self } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & mut self ) -> _EtpsW { _EtpsW { w : self } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & mut self ) -> _EtfW { _EtfW { w : self } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & mut self ) -> _MsmW { _MsmW { w : self } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & mut self ) -> _SmsW { _SmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TdeR { bits : u8 , } impl TdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComdeR { bits : u8 , } impl ComdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4deR { bits : u8 , } impl Cc4deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3deR { bits : u8 , } impl Cc3deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2deR { bits : u8 , } impl Cc2deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1deR { bits : u8 , } impl Cc1deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdeR { bits : u8 , } impl UdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ieR { bits : u8 , } impl Cc4ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ieR { bits : u8 , } impl Cc3ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ieR { bits : u8 , } impl Cc2ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BieR { bits : u8 , } impl BieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComieR { bits : u8 , } impl ComieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TdeW < 'a > { w : & 'a mut W , } impl < 'a > _TdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComdeW < 'a > { w : & 'a mut W , } impl < 'a > _ComdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdeW < 'a > { w : & 'a mut W , } impl < 'a > _UdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BieW < 'a > { w : & 'a mut W , } impl < 'a > _BieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComieW < 'a > { w : & 'a mut W , } impl < 'a > _ComieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & self ) -> TdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TdeR { bits } } # [ doc = "Bit 13 - COM DMA request enable" ] # [ inline ( always ) ] pub fn comde ( & self ) -> ComdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComdeR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & self ) -> Cc4deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4deR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & self ) -> Cc3deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3deR { bits } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & self ) -> Cc2deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2deR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & self ) -> Cc1deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1deR { bits } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & self ) -> UdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdeR { bits } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & self ) -> Cc4ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ieR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & self ) -> Cc3ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ieR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & self ) -> Cc2ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ieR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } # [ doc = "Bit 7 - Break interrupt enable" ] # [ inline ( always ) ] pub fn bie ( & self ) -> BieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BieR { bits } } # [ doc = "Bit 5 - COM interrupt enable" ] # [ inline ( always ) ] pub fn comie ( & self ) -> ComieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & mut self ) -> _TdeW { _TdeW { w : self } } # [ doc = "Bit 13 - COM DMA request enable" ] # [ inline ( always ) ] pub fn comde ( & mut self ) -> _ComdeW { _ComdeW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & mut self ) -> _Cc4deW { _Cc4deW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & mut self ) -> _Cc3deW { _Cc3deW { w : self } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & mut self ) -> _Cc2deW { _Cc2deW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & mut self ) -> _Cc1deW { _Cc1deW { w : self } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & mut self ) -> _UdeW { _UdeW { w : self } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & mut self ) -> _Cc4ieW { _Cc4ieW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & mut self ) -> _Cc3ieW { _Cc3ieW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & mut self ) -> _Cc2ieW { _Cc2ieW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } # [ doc = "Bit 7 - Break interrupt enable" ] # [ inline ( always ) ] pub fn bie ( & mut self ) -> _BieW { _BieW { w : self } } # [ doc = "Bit 5 - COM interrupt enable" ] # [ inline ( always ) ] pub fn comie ( & mut self ) -> _ComieW { _ComieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4ofR { bits : u8 , } impl Cc4ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ofR { bits : u8 , } impl Cc3ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ofR { bits : u8 , } impl Cc2ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BifR { bits : u8 , } impl BifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TifR { bits : u8 , } impl TifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComifR { bits : u8 , } impl ComifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ifR { bits : u8 , } impl Cc4ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ifR { bits : u8 , } impl Cc3ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ifR { bits : u8 , } impl Cc2ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BifW < 'a > { w : & 'a mut W , } impl < 'a > _BifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TifW < 'a > { w : & 'a mut W , } impl < 'a > _TifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComifW < 'a > { w : & 'a mut W , } impl < 'a > _ComifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & self ) -> Cc4ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ofR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & self ) -> Cc3ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ofR { bits } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & self ) -> Cc2ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ofR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 7 - Break interrupt flag" ] # [ inline ( always ) ] pub fn bif ( & self ) -> BifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BifR { bits } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & self ) -> TifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifR { bits } } # [ doc = "Bit 5 - COM interrupt flag" ] # [ inline ( always ) ] pub fn comif ( & self ) -> ComifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComifR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & self ) -> Cc4ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ifR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & self ) -> Cc3ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ifR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & self ) -> Cc2ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ifR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & mut self ) -> _Cc4ofW { _Cc4ofW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & mut self ) -> _Cc3ofW { _Cc3ofW { w : self } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & mut self ) -> _Cc2ofW { _Cc2ofW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 7 - Break interrupt flag" ] # [ inline ( always ) ] pub fn bif ( & mut self ) -> _BifW { _BifW { w : self } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & mut self ) -> _TifW { _TifW { w : self } } # [ doc = "Bit 5 - COM interrupt flag" ] # [ inline ( always ) ] pub fn comif ( & mut self ) -> _ComifW { _ComifW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & mut self ) -> _Cc4ifW { _Cc4ifW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & mut self ) -> _Cc3ifW { _Cc3ifW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & mut self ) -> _Cc2ifW { _Cc2ifW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _BgW < 'a > { w : & 'a mut W , } impl < 'a > _BgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgW < 'a > { w : & 'a mut W , } impl < 'a > _TgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComgW < 'a > { w : & 'a mut W , } impl < 'a > _ComgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Break generation" ] # [ inline ( always ) ] pub fn bg ( & mut self ) -> _BgW { _BgW { w : self } } # [ doc = "Bit 6 - Trigger generation" ] # [ inline ( always ) ] pub fn tg ( & mut self ) -> _TgW { _TgW { w : self } } # [ doc = "Bit 5 - Capture/Compare control update generation" ] # [ inline ( always ) ] pub fn comg ( & mut self ) -> _ComgW { _ComgW { w : self } } # [ doc = "Bit 4 - Capture/compare 4 generation" ] # [ inline ( always ) ] pub fn cc4g ( & mut self ) -> _Cc4gW { _Cc4gW { w : self } } # [ doc = "Bit 3 - Capture/compare 3 generation" ] # [ inline ( always ) ] pub fn cc3g ( & mut self ) -> _Cc3gW { _Cc3gW { w : self } } # [ doc = "Bit 2 - Capture/compare 2 generation" ] # [ inline ( always ) ] pub fn cc2g ( & mut self ) -> _Cc2gW { _Cc2gW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc2ceR { bits : u8 , } impl Oc2ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2mR { bits : u8 , } impl Oc2mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2peR { bits : u8 , } impl Oc2peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2feR { bits : u8 , } impl Oc2feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1ceR { bits : u8 , } impl Oc1ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc2ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Output Compare 2 clear enable" ] # [ inline ( always ) ] pub fn oc2ce ( & self ) -> Oc2ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2ceR { bits } } # [ doc = "Bits 12:14 - Output Compare 2 mode" ] # [ inline ( always ) ] pub fn oc2m ( & self ) -> Oc2mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2mR { bits } } # [ doc = "Bit 11 - Output Compare 2 preload enable" ] # [ inline ( always ) ] pub fn oc2pe ( & self ) -> Oc2peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2peR { bits } } # [ doc = "Bit 10 - Output Compare 2 fast enable" ] # [ inline ( always ) ] pub fn oc2fe ( & self ) -> Oc2feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2feR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bit 7 - Output Compare 1 clear enable" ] # [ inline ( always ) ] pub fn oc1ce ( & self ) -> Oc1ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1ceR { bits } } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Output Compare 2 clear enable" ] # [ inline ( always ) ] pub fn oc2ce ( & mut self ) -> _Oc2ceW { _Oc2ceW { w : self } } # [ doc = "Bits 12:14 - Output Compare 2 mode" ] # [ inline ( always ) ] pub fn oc2m ( & mut self ) -> _Oc2mW { _Oc2mW { w : self } } # [ doc = "Bit 11 - Output Compare 2 preload enable" ] # [ inline ( always ) ] pub fn oc2pe ( & mut self ) -> _Oc2peW { _Oc2peW { w : self } } # [ doc = "Bit 10 - Output Compare 2 fast enable" ] # [ inline ( always ) ] pub fn oc2fe ( & mut self ) -> _Oc2feW { _Oc2feW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bit 7 - Output Compare 1 clear enable" ] # [ inline ( always ) ] pub fn oc1ce ( & mut self ) -> _Oc1ceW { _Oc1ceW { w : self } } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic2fR { bits : u8 , } impl Ic2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic2pcsR { bits : u8 , } impl Ic2pcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic2fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic2pcsW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2pcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & self ) -> Ic2fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2fR { bits } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & self ) -> Ic2pcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2pcsR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & mut self ) -> _Ic2fW { _Ic2fW { w : self } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & mut self ) -> _Ic2pcsW { _Ic2pcsW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 2 (output mode)" ] pub struct Ccmr2Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (output mode)" ] pub mod ccmr2_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc4ceR { bits : u8 , } impl Oc4ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4mR { bits : u8 , } impl Oc4mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4peR { bits : u8 , } impl Oc4peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4feR { bits : u8 , } impl Oc4feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3ceR { bits : u8 , } impl Oc3ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3mR { bits : u8 , } impl Oc3mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3peR { bits : u8 , } impl Oc3peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3feR { bits : u8 , } impl Oc3feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc4ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Output compare 4 clear enable" ] # [ inline ( always ) ] pub fn oc4ce ( & self ) -> Oc4ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4ceR { bits } } # [ doc = "Bits 12:14 - Output compare 4 mode" ] # [ inline ( always ) ] pub fn oc4m ( & self ) -> Oc4mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4mR { bits } } # [ doc = "Bit 11 - Output compare 4 preload enable" ] # [ inline ( always ) ] pub fn oc4pe ( & self ) -> Oc4peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4peR { bits } } # [ doc = "Bit 10 - Output compare 4 fast enable" ] # [ inline ( always ) ] pub fn oc4fe ( & self ) -> Oc4feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4feR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bit 7 - Output compare 3 clear enable" ] # [ inline ( always ) ] pub fn oc3ce ( & self ) -> Oc3ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3ceR { bits } } # [ doc = "Bits 4:6 - Output compare 3 mode" ] # [ inline ( always ) ] pub fn oc3m ( & self ) -> Oc3mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3mR { bits } } # [ doc = "Bit 3 - Output compare 3 preload enable" ] # [ inline ( always ) ] pub fn oc3pe ( & self ) -> Oc3peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3peR { bits } } # [ doc = "Bit 2 - Output compare 3 fast enable" ] # [ inline ( always ) ] pub fn oc3fe ( & self ) -> Oc3feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3feR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Output compare 4 clear enable" ] # [ inline ( always ) ] pub fn oc4ce ( & mut self ) -> _Oc4ceW { _Oc4ceW { w : self } } # [ doc = "Bits 12:14 - Output compare 4 mode" ] # [ inline ( always ) ] pub fn oc4m ( & mut self ) -> _Oc4mW { _Oc4mW { w : self } } # [ doc = "Bit 11 - Output compare 4 preload enable" ] # [ inline ( always ) ] pub fn oc4pe ( & mut self ) -> _Oc4peW { _Oc4peW { w : self } } # [ doc = "Bit 10 - Output compare 4 fast enable" ] # [ inline ( always ) ] pub fn oc4fe ( & mut self ) -> _Oc4feW { _Oc4feW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bit 7 - Output compare 3 clear enable" ] # [ inline ( always ) ] pub fn oc3ce ( & mut self ) -> _Oc3ceW { _Oc3ceW { w : self } } # [ doc = "Bits 4:6 - Output compare 3 mode" ] # [ inline ( always ) ] pub fn oc3m ( & mut self ) -> _Oc3mW { _Oc3mW { w : self } } # [ doc = "Bit 3 - Output compare 3 preload enable" ] # [ inline ( always ) ] pub fn oc3pe ( & mut self ) -> _Oc3peW { _Oc3peW { w : self } } # [ doc = "Bit 2 - Output compare 3 fast enable" ] # [ inline ( always ) ] pub fn oc3fe ( & mut self ) -> _Oc3feW { _Oc3feW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare mode register 2 (input mode)" ] pub struct Ccmr2Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (input mode)" ] pub mod ccmr2_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic4fR { bits : u8 , } impl Ic4fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic4pscR { bits : u8 , } impl Ic4pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3fR { bits : u8 , } impl Ic3fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3pscR { bits : u8 , } impl Ic3pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic4fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic4pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & self ) -> Ic4fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4fR { bits } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & self ) -> Ic4pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4pscR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & self ) -> Ic3fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3fR { bits } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & self ) -> Ic3pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3pscR { bits } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & mut self ) -> _Ic4fW { _Ic4fW { w : self } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & mut self ) -> _Ic4pscW { _Ic4pscW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & mut self ) -> _Ic3fW { _Ic3fW { w : self } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & mut self ) -> _Ic3pscW { _Ic3pscW { w : self } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4pR { bits : u8 , } impl Cc4pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4eR { bits : u8 , } impl Cc4eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3npR { bits : u8 , } impl Cc3npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3neR { bits : u8 , } impl Cc3neR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3pR { bits : u8 , } impl Cc3pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3eR { bits : u8 , } impl Cc3eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2npR { bits : u8 , } impl Cc2npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2neR { bits : u8 , } impl Cc2neR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2pR { bits : u8 , } impl Cc2pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2eR { bits : u8 , } impl Cc2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1neR { bits : u8 , } impl Cc1neR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3neW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3neW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2neW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2neW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1neW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1neW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & self ) -> Cc4pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4pR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & self ) -> Cc4eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4eR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & self ) -> Cc3npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3npR { bits } } # [ doc = "Bit 10 - Capture/Compare 3 complementary output enable" ] # [ inline ( always ) ] pub fn cc3ne ( & self ) -> Cc3neR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3neR { bits } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & self ) -> Cc3pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3pR { bits } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & self ) -> Cc3eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3eR { bits } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & self ) -> Cc2npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2npR { bits } } # [ doc = "Bit 6 - Capture/Compare 2 complementary output enable" ] # [ inline ( always ) ] pub fn cc2ne ( & self ) -> Cc2neR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2neR { bits } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & self ) -> Cc2pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2pR { bits } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & self ) -> Cc2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2eR { bits } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 2 - Capture/Compare 1 complementary output enable" ] # [ inline ( always ) ] pub fn cc1ne ( & self ) -> Cc1neR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1neR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & mut self ) -> _Cc4pW { _Cc4pW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & mut self ) -> _Cc4eW { _Cc4eW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & mut self ) -> _Cc3npW { _Cc3npW { w : self } } # [ doc = "Bit 10 - Capture/Compare 3 complementary output enable" ] # [ inline ( always ) ] pub fn cc3ne ( & mut self ) -> _Cc3neW { _Cc3neW { w : self } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & mut self ) -> _Cc3pW { _Cc3pW { w : self } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & mut self ) -> _Cc3eW { _Cc3eW { w : self } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & mut self ) -> _Cc2npW { _Cc2npW { w : self } } # [ doc = "Bit 6 - Capture/Compare 2 complementary output enable" ] # [ inline ( always ) ] pub fn cc2ne ( & mut self ) -> _Cc2neW { _Cc2neW { w : self } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & mut self ) -> _Cc2pW { _Cc2pW { w : self } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & mut self ) -> _Cc2eW { _Cc2eW { w : self } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 2 - Capture/Compare 1 complementary output enable" ] # [ inline ( always ) ] pub fn cc1ne ( & mut self ) -> _Cc1neW { _Cc1neW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntR { bits : u16 , } impl CntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntW < 'a > { w : & 'a mut W , } impl < 'a > _CntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & self ) -> CntR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & mut self ) -> _CntW { _CntW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrR { bits : u16 , } impl ArrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrW < 'a > { w : & 'a mut W , } impl < 'a > _ArrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & self ) -> ArrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & mut self ) -> _ArrW { _ArrW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1R { bits : u16 , } impl Ccr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & self ) -> Ccr1R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & mut self ) -> _Ccr1W { _Ccr1W { w : self } } } } # [ doc = "capture/compare register 2" ] pub struct Ccr2 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 2" ] pub mod ccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr2R { bits : u16 , } impl Ccr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr2W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2 ( & self ) -> Ccr2R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2 ( & mut self ) -> _Ccr2W { _Ccr2W { w : self } } } } # [ doc = "capture/compare register 3" ] pub struct Ccr3 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 3" ] pub mod ccr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr3R { bits : u16 , } impl Ccr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr3W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3 ( & self ) -> Ccr3R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3 ( & mut self ) -> _Ccr3W { _Ccr3W { w : self } } } } # [ doc = "capture/compare register 4" ] pub struct Ccr4 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 4" ] pub mod ccr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr4R { bits : u16 , } impl Ccr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr4W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4 ( & self ) -> Ccr4R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4 ( & mut self ) -> _Ccr4W { _Ccr4W { w : self } } } } # [ doc = "DMA control register" ] pub struct Dcr { register : VolatileCell < u32 > } # [ doc = "DMA control register" ] pub mod dcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DblR { bits : u8 , } impl DblR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbaR { bits : u8 , } impl DbaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DblW < 'a > { w : & 'a mut W , } impl < 'a > _DblW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbaW < 'a > { w : & 'a mut W , } impl < 'a > _DbaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & self ) -> DblR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DblR { bits } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & self ) -> DbaR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & mut self ) -> _DblW { _DblW { w : self } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & mut self ) -> _DbaW { _DbaW { w : self } } } } # [ doc = "DMA address for full transfer" ] pub struct Dmar { register : VolatileCell < u32 > } # [ doc = "DMA address for full transfer" ] pub mod dmar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmabR { bits : u16 , } impl DmabR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmabW < 'a > { w : & 'a mut W , } impl < 'a > _DmabW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & self ) -> DmabR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DmabR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & mut self ) -> _DmabW { _DmabW { w : self } } } } # [ doc = "repetition counter register" ] pub struct Rcr { register : VolatileCell < u32 > } # [ doc = "repetition counter register" ] pub mod rcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Rcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RepR { bits : u8 , } impl RepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RepW < 'a > { w : & 'a mut W , } impl < 'a > _RepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - Repetition counter value" ] # [ inline ( always ) ] pub fn rep ( & self ) -> RepR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RepR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - Repetition counter value" ] # [ inline ( always ) ] pub fn rep ( & mut self ) -> _RepW { _RepW { w : self } } } } # [ doc = "break and dead-time register" ] pub struct Bdtr { register : VolatileCell < u32 > } # [ doc = "break and dead-time register" ] pub mod bdtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Bdtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MoeR { bits : u8 , } impl MoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AoeR { bits : u8 , } impl AoeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BkpR { bits : u8 , } impl BkpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BkeR { bits : u8 , } impl BkeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OssrR { bits : u8 , } impl OssrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OssiR { bits : u8 , } impl OssiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LockR { bits : u8 , } impl LockR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtgR { bits : u8 , } impl DtgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MoeW < 'a > { w : & 'a mut W , } impl < 'a > _MoeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AoeW < 'a > { w : & 'a mut W , } impl < 'a > _AoeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BkpW < 'a > { w : & 'a mut W , } impl < 'a > _BkpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BkeW < 'a > { w : & 'a mut W , } impl < 'a > _BkeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OssrW < 'a > { w : & 'a mut W , } impl < 'a > _OssrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OssiW < 'a > { w : & 'a mut W , } impl < 'a > _OssiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LockW < 'a > { w : & 'a mut W , } impl < 'a > _LockW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtgW < 'a > { w : & 'a mut W , } impl < 'a > _DtgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Main output enable" ] # [ inline ( always ) ] pub fn moe ( & self ) -> MoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MoeR { bits } } # [ doc = "Bit 14 - Automatic output enable" ] # [ inline ( always ) ] pub fn aoe ( & self ) -> AoeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AoeR { bits } } # [ doc = "Bit 13 - Break polarity" ] # [ inline ( always ) ] pub fn bkp ( & self ) -> BkpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BkpR { bits } } # [ doc = "Bit 12 - Break enable" ] # [ inline ( always ) ] pub fn bke ( & self ) -> BkeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BkeR { bits } } # [ doc = "Bit 11 - Off-state selection for Run mode" ] # [ inline ( always ) ] pub fn ossr ( & self ) -> OssrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OssrR { bits } } # [ doc = "Bit 10 - Off-state selection for Idle mode" ] # [ inline ( always ) ] pub fn ossi ( & self ) -> OssiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OssiR { bits } } # [ doc = "Bits 8:9 - Lock configuration" ] # [ inline ( always ) ] pub fn lock ( & self ) -> LockR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LockR { bits } } # [ doc = "Bits 0:7 - Dead-time generator setup" ] # [ inline ( always ) ] pub fn dtg ( & self ) -> DtgR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtgR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Main output enable" ] # [ inline ( always ) ] pub fn moe ( & mut self ) -> _MoeW { _MoeW { w : self } } # [ doc = "Bit 14 - Automatic output enable" ] # [ inline ( always ) ] pub fn aoe ( & mut self ) -> _AoeW { _AoeW { w : self } } # [ doc = "Bit 13 - Break polarity" ] # [ inline ( always ) ] pub fn bkp ( & mut self ) -> _BkpW { _BkpW { w : self } } # [ doc = "Bit 12 - Break enable" ] # [ inline ( always ) ] pub fn bke ( & mut self ) -> _BkeW { _BkeW { w : self } } # [ doc = "Bit 11 - Off-state selection for Run mode" ] # [ inline ( always ) ] pub fn ossr ( & mut self ) -> _OssrW { _OssrW { w : self } } # [ doc = "Bit 10 - Off-state selection for Idle mode" ] # [ inline ( always ) ] pub fn ossi ( & mut self ) -> _OssiW { _OssiW { w : self } } # [ doc = "Bits 8:9 - Lock configuration" ] # [ inline ( always ) ] pub fn lock ( & mut self ) -> _LockW { _LockW { w : self } } # [ doc = "Bits 0:7 - Dead-time generator setup" ] # [ inline ( always ) ] pub fn dtg ( & mut self ) -> _DtgW { _DtgW { w : self } } } } } # [ doc = "Advanced-timers" ] pub struct Tim1 { register_block : tim1 :: RegisterBlock } impl Deref for Tim1 { type Target = tim1 :: RegisterBlock ; fn deref ( & self ) -> & tim1 :: RegisterBlock { & self . register_block } } # [ doc = "TIM8" ] pub const TIM8 : Peripheral < Tim8 > = unsafe { Peripheral :: new ( 1073808384 ) } ; # [ doc = r" Register block" ] pub struct Tim8 { register_block : tim1 :: RegisterBlock } impl Deref for Tim8 { type Target = tim1 :: RegisterBlock ; fn deref ( & self ) -> & tim1 :: RegisterBlock { & self . register_block } } # [ doc = "General purpose timers" ] pub const TIM2 : Peripheral < Tim2 > = unsafe { Peripheral :: new ( 1073741824 ) } ; # [ doc = "General purpose timers" ] pub mod tim2 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - slave mode control register" ] pub smcr : Smcr , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ] pub ccmr2_output : Ccmr2Output , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , # [ doc = "0x38 - capture/compare register 2" ] pub ccr2 : Ccr2 , # [ doc = "0x3c - capture/compare register 3" ] pub ccr3 : Ccr3 , # [ doc = "0x40 - capture/compare register 4" ] pub ccr4 : Ccr4 , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x48 - DMA control register" ] pub dcr : Dcr , # [ doc = "0x4c - DMA address for full transfer" ] pub dmar : Dmar , # [ doc = "0x50 - TIM5 option register" ] pub or : Or , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmsR { bits : u8 , } impl CmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmsW < 'a > { w : & 'a mut W , } impl < 'a > _CmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & self ) -> CmsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmsR { bits } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & mut self ) -> _CmsW { _CmsW { w : self } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ti1sR { bits : u8 , } impl Ti1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcdsR { bits : u8 , } impl CcdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ti1sW < 'a > { w : & 'a mut W , } impl < 'a > _Ti1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcdsW < 'a > { w : & 'a mut W , } impl < 'a > _CcdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & self ) -> Ti1sR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ti1sR { bits } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & self ) -> CcdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcdsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & mut self ) -> _Ti1sW { _Ti1sW { w : self } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & mut self ) -> _CcdsW { _CcdsW { w : self } } } } # [ doc = "slave mode control register" ] pub struct Smcr { register : VolatileCell < u32 > } # [ doc = "slave mode control register" ] pub mod smcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EtpR { bits : u8 , } impl EtpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EceR { bits : u8 , } impl EceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtpsR { bits : u8 , } impl EtpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtfR { bits : u8 , } impl EtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsmR { bits : u8 , } impl MsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmsR { bits : u8 , } impl SmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EtpW < 'a > { w : & 'a mut W , } impl < 'a > _EtpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EceW < 'a > { w : & 'a mut W , } impl < 'a > _EceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtpsW < 'a > { w : & 'a mut W , } impl < 'a > _EtpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtfW < 'a > { w : & 'a mut W , } impl < 'a > _EtfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsmW < 'a > { w : & 'a mut W , } impl < 'a > _MsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmsW < 'a > { w : & 'a mut W , } impl < 'a > _SmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & self ) -> EtpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpR { bits } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & self ) -> EceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EceR { bits } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & self ) -> EtpsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpsR { bits } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & self ) -> EtfR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtfR { bits } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & self ) -> MsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsmR { bits } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & self ) -> SmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & mut self ) -> _EtpW { _EtpW { w : self } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & mut self ) -> _EceW { _EceW { w : self } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & mut self ) -> _EtpsW { _EtpsW { w : self } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & mut self ) -> _EtfW { _EtfW { w : self } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & mut self ) -> _MsmW { _MsmW { w : self } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & mut self ) -> _SmsW { _SmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TdeR { bits : u8 , } impl TdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4deR { bits : u8 , } impl Cc4deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3deR { bits : u8 , } impl Cc3deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2deR { bits : u8 , } impl Cc2deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1deR { bits : u8 , } impl Cc1deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdeR { bits : u8 , } impl UdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ieR { bits : u8 , } impl Cc4ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ieR { bits : u8 , } impl Cc3ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ieR { bits : u8 , } impl Cc2ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TdeW < 'a > { w : & 'a mut W , } impl < 'a > _TdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdeW < 'a > { w : & 'a mut W , } impl < 'a > _UdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & self ) -> TdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TdeR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & self ) -> Cc4deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4deR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & self ) -> Cc3deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3deR { bits } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & self ) -> Cc2deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2deR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & self ) -> Cc1deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1deR { bits } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & self ) -> UdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdeR { bits } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & self ) -> Cc4ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ieR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & self ) -> Cc3ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ieR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & self ) -> Cc2ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ieR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & mut self ) -> _TdeW { _TdeW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & mut self ) -> _Cc4deW { _Cc4deW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & mut self ) -> _Cc3deW { _Cc3deW { w : self } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & mut self ) -> _Cc2deW { _Cc2deW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & mut self ) -> _Cc1deW { _Cc1deW { w : self } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & mut self ) -> _UdeW { _UdeW { w : self } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & mut self ) -> _Cc4ieW { _Cc4ieW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & mut self ) -> _Cc3ieW { _Cc3ieW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & mut self ) -> _Cc2ieW { _Cc2ieW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4ofR { bits : u8 , } impl Cc4ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ofR { bits : u8 , } impl Cc3ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ofR { bits : u8 , } impl Cc2ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TifR { bits : u8 , } impl TifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ifR { bits : u8 , } impl Cc4ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ifR { bits : u8 , } impl Cc3ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ifR { bits : u8 , } impl Cc2ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TifW < 'a > { w : & 'a mut W , } impl < 'a > _TifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & self ) -> Cc4ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ofR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & self ) -> Cc3ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ofR { bits } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & self ) -> Cc2ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ofR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & self ) -> TifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & self ) -> Cc4ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ifR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & self ) -> Cc3ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ifR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & self ) -> Cc2ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ifR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & mut self ) -> _Cc4ofW { _Cc4ofW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & mut self ) -> _Cc3ofW { _Cc3ofW { w : self } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & mut self ) -> _Cc2ofW { _Cc2ofW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & mut self ) -> _TifW { _TifW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & mut self ) -> _Cc4ifW { _Cc4ifW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & mut self ) -> _Cc3ifW { _Cc3ifW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & mut self ) -> _Cc2ifW { _Cc2ifW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _TgW < 'a > { w : & 'a mut W , } impl < 'a > _TgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Trigger generation" ] # [ inline ( always ) ] pub fn tg ( & mut self ) -> _TgW { _TgW { w : self } } # [ doc = "Bit 4 - Capture/compare 4 generation" ] # [ inline ( always ) ] pub fn cc4g ( & mut self ) -> _Cc4gW { _Cc4gW { w : self } } # [ doc = "Bit 3 - Capture/compare 3 generation" ] # [ inline ( always ) ] pub fn cc3g ( & mut self ) -> _Cc3gW { _Cc3gW { w : self } } # [ doc = "Bit 2 - Capture/compare 2 generation" ] # [ inline ( always ) ] pub fn cc2g ( & mut self ) -> _Cc2gW { _Cc2gW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc2ceR { bits : u8 , } impl Oc2ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2mR { bits : u8 , } impl Oc2mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2peR { bits : u8 , } impl Oc2peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2feR { bits : u8 , } impl Oc2feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1ceR { bits : u8 , } impl Oc1ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc2ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & self ) -> Oc2ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2ceR { bits } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & self ) -> Oc2mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2mR { bits } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & self ) -> Oc2peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2peR { bits } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & self ) -> Oc2feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2feR { bits } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & self ) -> Oc1ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1ceR { bits } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & mut self ) -> _Oc2ceW { _Oc2ceW { w : self } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & mut self ) -> _Oc2mW { _Oc2mW { w : self } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & mut self ) -> _Oc2peW { _Oc2peW { w : self } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & mut self ) -> _Oc2feW { _Oc2feW { w : self } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & mut self ) -> _Oc1ceW { _Oc1ceW { w : self } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic2fR { bits : u8 , } impl Ic2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic2pcsR { bits : u8 , } impl Ic2pcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic2fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic2pcsW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2pcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & self ) -> Ic2fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2fR { bits } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & self ) -> Ic2pcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2pcsR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & mut self ) -> _Ic2fW { _Ic2fW { w : self } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & mut self ) -> _Ic2pcsW { _Ic2pcsW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 2 (output mode)" ] pub struct Ccmr2Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (output mode)" ] pub mod ccmr2_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct O24ceR { bits : u8 , } impl O24ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4mR { bits : u8 , } impl Oc4mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4peR { bits : u8 , } impl Oc4peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4feR { bits : u8 , } impl Oc4feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3ceR { bits : u8 , } impl Oc3ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3mR { bits : u8 , } impl Oc3mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3peR { bits : u8 , } impl Oc3peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3feR { bits : u8 , } impl Oc3feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _O24ceW < 'a > { w : & 'a mut W , } impl < 'a > _O24ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & self ) -> O24ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; O24ceR { bits } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & self ) -> Oc4mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4mR { bits } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & self ) -> Oc4peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4peR { bits } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & self ) -> Oc4feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4feR { bits } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & self ) -> Oc3ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3ceR { bits } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & self ) -> Oc3mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3mR { bits } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & self ) -> Oc3peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3peR { bits } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & self ) -> Oc3feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3feR { bits } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & mut self ) -> _O24ceW { _O24ceW { w : self } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & mut self ) -> _Oc4mW { _Oc4mW { w : self } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & mut self ) -> _Oc4peW { _Oc4peW { w : self } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & mut self ) -> _Oc4feW { _Oc4feW { w : self } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & mut self ) -> _Oc3ceW { _Oc3ceW { w : self } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & mut self ) -> _Oc3mW { _Oc3mW { w : self } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & mut self ) -> _Oc3peW { _Oc3peW { w : self } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & mut self ) -> _Oc3feW { _Oc3feW { w : self } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare mode register 2 (input mode)" ] pub struct Ccmr2Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (input mode)" ] pub mod ccmr2_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic4fR { bits : u8 , } impl Ic4fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic4pscR { bits : u8 , } impl Ic4pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3fR { bits : u8 , } impl Ic3fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3pscR { bits : u8 , } impl Ic3pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic4fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic4pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & self ) -> Ic4fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4fR { bits } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & self ) -> Ic4pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4pscR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & self ) -> Ic3fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3fR { bits } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & self ) -> Ic3pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3pscR { bits } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & mut self ) -> _Ic4fW { _Ic4fW { w : self } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & mut self ) -> _Ic4pscW { _Ic4pscW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & mut self ) -> _Ic3fW { _Ic3fW { w : self } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & mut self ) -> _Ic3pscW { _Ic3pscW { w : self } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4npR { bits : u8 , } impl Cc4npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4pR { bits : u8 , } impl Cc4pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4eR { bits : u8 , } impl Cc4eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3npR { bits : u8 , } impl Cc3npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3pR { bits : u8 , } impl Cc3pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3eR { bits : u8 , } impl Cc3eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2npR { bits : u8 , } impl Cc2npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2pR { bits : u8 , } impl Cc2pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2eR { bits : u8 , } impl Cc2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & self ) -> Cc4npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4npR { bits } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & self ) -> Cc4pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4pR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & self ) -> Cc4eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4eR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & self ) -> Cc3npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3npR { bits } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & self ) -> Cc3pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3pR { bits } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & self ) -> Cc3eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3eR { bits } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & self ) -> Cc2npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2npR { bits } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & self ) -> Cc2pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2pR { bits } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & self ) -> Cc2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2eR { bits } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & mut self ) -> _Cc4npW { _Cc4npW { w : self } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & mut self ) -> _Cc4pW { _Cc4pW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & mut self ) -> _Cc4eW { _Cc4eW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & mut self ) -> _Cc3npW { _Cc3npW { w : self } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & mut self ) -> _Cc3pW { _Cc3pW { w : self } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & mut self ) -> _Cc3eW { _Cc3eW { w : self } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & mut self ) -> _Cc2npW { _Cc2npW { w : self } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & mut self ) -> _Cc2pW { _Cc2pW { w : self } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & mut self ) -> _Cc2eW { _Cc2eW { w : self } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntHR { bits : u16 , } impl CntHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct CntLR { bits : u16 , } impl CntLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntHW < 'a > { w : & 'a mut W , } impl < 'a > _CntHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CntLW < 'a > { w : & 'a mut W , } impl < 'a > _CntLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & self ) -> CntHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntHR { bits } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & self ) -> CntLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & mut self ) -> _CntHW { _CntHW { w : self } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & mut self ) -> _CntLW { _CntLW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrHR { bits : u16 , } impl ArrHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArrLR { bits : u16 , } impl ArrLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrHW < 'a > { w : & 'a mut W , } impl < 'a > _ArrHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArrLW < 'a > { w : & 'a mut W , } impl < 'a > _ArrLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & self ) -> ArrHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrHR { bits } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & self ) -> ArrLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & mut self ) -> _ArrHW { _ArrHW { w : self } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & mut self ) -> _ArrLW { _ArrLW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1HR { bits : u16 , } impl Ccr1HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr1LR { bits : u16 , } impl Ccr1LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr1LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & self ) -> Ccr1HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & self ) -> Ccr1LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & mut self ) -> _Ccr1HW { _Ccr1HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & mut self ) -> _Ccr1LW { _Ccr1LW { w : self } } } } # [ doc = "capture/compare register 2" ] pub struct Ccr2 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 2" ] pub mod ccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr2HR { bits : u16 , } impl Ccr2HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr2LR { bits : u16 , } impl Ccr2LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr2HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr2LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & self ) -> Ccr2HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & self ) -> Ccr2LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & mut self ) -> _Ccr2HW { _Ccr2HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & mut self ) -> _Ccr2LW { _Ccr2LW { w : self } } } } # [ doc = "capture/compare register 3" ] pub struct Ccr3 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 3" ] pub mod ccr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr3HR { bits : u16 , } impl Ccr3HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr3LR { bits : u16 , } impl Ccr3LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr3HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr3LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & self ) -> Ccr3HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & self ) -> Ccr3LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & mut self ) -> _Ccr3HW { _Ccr3HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & mut self ) -> _Ccr3LW { _Ccr3LW { w : self } } } } # [ doc = "capture/compare register 4" ] pub struct Ccr4 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 4" ] pub mod ccr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr4HR { bits : u16 , } impl Ccr4HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr4LR { bits : u16 , } impl Ccr4LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr4HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr4LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & self ) -> Ccr4HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & self ) -> Ccr4LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & mut self ) -> _Ccr4HW { _Ccr4HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & mut self ) -> _Ccr4LW { _Ccr4LW { w : self } } } } # [ doc = "DMA control register" ] pub struct Dcr { register : VolatileCell < u32 > } # [ doc = "DMA control register" ] pub mod dcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DblR { bits : u8 , } impl DblR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbaR { bits : u8 , } impl DbaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DblW < 'a > { w : & 'a mut W , } impl < 'a > _DblW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbaW < 'a > { w : & 'a mut W , } impl < 'a > _DbaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & self ) -> DblR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DblR { bits } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & self ) -> DbaR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & mut self ) -> _DblW { _DblW { w : self } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & mut self ) -> _DbaW { _DbaW { w : self } } } } # [ doc = "DMA address for full transfer" ] pub struct Dmar { register : VolatileCell < u32 > } # [ doc = "DMA address for full transfer" ] pub mod dmar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmabR { bits : u16 , } impl DmabR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmabW < 'a > { w : & 'a mut W , } impl < 'a > _DmabW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & self ) -> DmabR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DmabR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & mut self ) -> _DmabW { _DmabW { w : self } } } } # [ doc = "TIM5 option register" ] pub struct Or { register : VolatileCell < u32 > } # [ doc = "TIM5 option register" ] pub mod or { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Or { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Itr1RmpR { bits : u8 , } impl Itr1RmpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Itr1RmpW < 'a > { w : & 'a mut W , } impl < 'a > _Itr1RmpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 10:11 - Timer Input 4 remap" ] # [ inline ( always ) ] pub fn itr1_rmp ( & self ) -> Itr1RmpR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Itr1RmpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 10:11 - Timer Input 4 remap" ] # [ inline ( always ) ] pub fn itr1_rmp ( & mut self ) -> _Itr1RmpW { _Itr1RmpW { w : self } } } } } # [ doc = "General purpose timers" ] pub struct Tim2 { register_block : tim2 :: RegisterBlock } impl Deref for Tim2 { type Target = tim2 :: RegisterBlock ; fn deref ( & self ) -> & tim2 :: RegisterBlock { & self . register_block } } # [ doc = "General purpose timers" ] pub const TIM3 : Peripheral < Tim3 > = unsafe { Peripheral :: new ( 1073742848 ) } ; # [ doc = "General purpose timers" ] pub mod tim3 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - slave mode control register" ] pub smcr : Smcr , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ] pub ccmr2_output : Ccmr2Output , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , # [ doc = "0x38 - capture/compare register 2" ] pub ccr2 : Ccr2 , # [ doc = "0x3c - capture/compare register 3" ] pub ccr3 : Ccr3 , # [ doc = "0x40 - capture/compare register 4" ] pub ccr4 : Ccr4 , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x48 - DMA control register" ] pub dcr : Dcr , # [ doc = "0x4c - DMA address for full transfer" ] pub dmar : Dmar , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmsR { bits : u8 , } impl CmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmsW < 'a > { w : & 'a mut W , } impl < 'a > _CmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & self ) -> CmsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmsR { bits } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & mut self ) -> _CmsW { _CmsW { w : self } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ti1sR { bits : u8 , } impl Ti1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcdsR { bits : u8 , } impl CcdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ti1sW < 'a > { w : & 'a mut W , } impl < 'a > _Ti1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcdsW < 'a > { w : & 'a mut W , } impl < 'a > _CcdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & self ) -> Ti1sR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ti1sR { bits } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & self ) -> CcdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcdsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & mut self ) -> _Ti1sW { _Ti1sW { w : self } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & mut self ) -> _CcdsW { _CcdsW { w : self } } } } # [ doc = "slave mode control register" ] pub struct Smcr { register : VolatileCell < u32 > } # [ doc = "slave mode control register" ] pub mod smcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EtpR { bits : u8 , } impl EtpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EceR { bits : u8 , } impl EceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtpsR { bits : u8 , } impl EtpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtfR { bits : u8 , } impl EtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsmR { bits : u8 , } impl MsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmsR { bits : u8 , } impl SmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EtpW < 'a > { w : & 'a mut W , } impl < 'a > _EtpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EceW < 'a > { w : & 'a mut W , } impl < 'a > _EceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtpsW < 'a > { w : & 'a mut W , } impl < 'a > _EtpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtfW < 'a > { w : & 'a mut W , } impl < 'a > _EtfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsmW < 'a > { w : & 'a mut W , } impl < 'a > _MsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmsW < 'a > { w : & 'a mut W , } impl < 'a > _SmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & self ) -> EtpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpR { bits } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & self ) -> EceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EceR { bits } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & self ) -> EtpsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpsR { bits } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & self ) -> EtfR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtfR { bits } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & self ) -> MsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsmR { bits } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & self ) -> SmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & mut self ) -> _EtpW { _EtpW { w : self } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & mut self ) -> _EceW { _EceW { w : self } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & mut self ) -> _EtpsW { _EtpsW { w : self } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & mut self ) -> _EtfW { _EtfW { w : self } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & mut self ) -> _MsmW { _MsmW { w : self } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & mut self ) -> _SmsW { _SmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TdeR { bits : u8 , } impl TdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4deR { bits : u8 , } impl Cc4deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3deR { bits : u8 , } impl Cc3deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2deR { bits : u8 , } impl Cc2deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1deR { bits : u8 , } impl Cc1deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdeR { bits : u8 , } impl UdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ieR { bits : u8 , } impl Cc4ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ieR { bits : u8 , } impl Cc3ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ieR { bits : u8 , } impl Cc2ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TdeW < 'a > { w : & 'a mut W , } impl < 'a > _TdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdeW < 'a > { w : & 'a mut W , } impl < 'a > _UdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & self ) -> TdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TdeR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & self ) -> Cc4deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4deR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & self ) -> Cc3deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3deR { bits } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & self ) -> Cc2deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2deR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & self ) -> Cc1deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1deR { bits } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & self ) -> UdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdeR { bits } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & self ) -> Cc4ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ieR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & self ) -> Cc3ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ieR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & self ) -> Cc2ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ieR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & mut self ) -> _TdeW { _TdeW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & mut self ) -> _Cc4deW { _Cc4deW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & mut self ) -> _Cc3deW { _Cc3deW { w : self } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & mut self ) -> _Cc2deW { _Cc2deW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & mut self ) -> _Cc1deW { _Cc1deW { w : self } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & mut self ) -> _UdeW { _UdeW { w : self } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & mut self ) -> _Cc4ieW { _Cc4ieW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & mut self ) -> _Cc3ieW { _Cc3ieW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & mut self ) -> _Cc2ieW { _Cc2ieW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4ofR { bits : u8 , } impl Cc4ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ofR { bits : u8 , } impl Cc3ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ofR { bits : u8 , } impl Cc2ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TifR { bits : u8 , } impl TifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ifR { bits : u8 , } impl Cc4ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ifR { bits : u8 , } impl Cc3ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ifR { bits : u8 , } impl Cc2ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TifW < 'a > { w : & 'a mut W , } impl < 'a > _TifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & self ) -> Cc4ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ofR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & self ) -> Cc3ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ofR { bits } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & self ) -> Cc2ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ofR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & self ) -> TifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & self ) -> Cc4ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ifR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & self ) -> Cc3ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ifR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & self ) -> Cc2ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ifR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & mut self ) -> _Cc4ofW { _Cc4ofW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & mut self ) -> _Cc3ofW { _Cc3ofW { w : self } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & mut self ) -> _Cc2ofW { _Cc2ofW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & mut self ) -> _TifW { _TifW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & mut self ) -> _Cc4ifW { _Cc4ifW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & mut self ) -> _Cc3ifW { _Cc3ifW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & mut self ) -> _Cc2ifW { _Cc2ifW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _TgW < 'a > { w : & 'a mut W , } impl < 'a > _TgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Trigger generation" ] # [ inline ( always ) ] pub fn tg ( & mut self ) -> _TgW { _TgW { w : self } } # [ doc = "Bit 4 - Capture/compare 4 generation" ] # [ inline ( always ) ] pub fn cc4g ( & mut self ) -> _Cc4gW { _Cc4gW { w : self } } # [ doc = "Bit 3 - Capture/compare 3 generation" ] # [ inline ( always ) ] pub fn cc3g ( & mut self ) -> _Cc3gW { _Cc3gW { w : self } } # [ doc = "Bit 2 - Capture/compare 2 generation" ] # [ inline ( always ) ] pub fn cc2g ( & mut self ) -> _Cc2gW { _Cc2gW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc2ceR { bits : u8 , } impl Oc2ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2mR { bits : u8 , } impl Oc2mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2peR { bits : u8 , } impl Oc2peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2feR { bits : u8 , } impl Oc2feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1ceR { bits : u8 , } impl Oc1ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc2ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & self ) -> Oc2ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2ceR { bits } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & self ) -> Oc2mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2mR { bits } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & self ) -> Oc2peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2peR { bits } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & self ) -> Oc2feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2feR { bits } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & self ) -> Oc1ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1ceR { bits } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & mut self ) -> _Oc2ceW { _Oc2ceW { w : self } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & mut self ) -> _Oc2mW { _Oc2mW { w : self } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & mut self ) -> _Oc2peW { _Oc2peW { w : self } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & mut self ) -> _Oc2feW { _Oc2feW { w : self } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & mut self ) -> _Oc1ceW { _Oc1ceW { w : self } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic2fR { bits : u8 , } impl Ic2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic2pcsR { bits : u8 , } impl Ic2pcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic2fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic2pcsW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2pcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & self ) -> Ic2fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2fR { bits } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & self ) -> Ic2pcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2pcsR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & mut self ) -> _Ic2fW { _Ic2fW { w : self } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & mut self ) -> _Ic2pcsW { _Ic2pcsW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 2 (output mode)" ] pub struct Ccmr2Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (output mode)" ] pub mod ccmr2_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct O24ceR { bits : u8 , } impl O24ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4mR { bits : u8 , } impl Oc4mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4peR { bits : u8 , } impl Oc4peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4feR { bits : u8 , } impl Oc4feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3ceR { bits : u8 , } impl Oc3ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3mR { bits : u8 , } impl Oc3mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3peR { bits : u8 , } impl Oc3peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3feR { bits : u8 , } impl Oc3feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _O24ceW < 'a > { w : & 'a mut W , } impl < 'a > _O24ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & self ) -> O24ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; O24ceR { bits } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & self ) -> Oc4mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4mR { bits } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & self ) -> Oc4peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4peR { bits } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & self ) -> Oc4feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4feR { bits } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & self ) -> Oc3ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3ceR { bits } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & self ) -> Oc3mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3mR { bits } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & self ) -> Oc3peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3peR { bits } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & self ) -> Oc3feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3feR { bits } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & mut self ) -> _O24ceW { _O24ceW { w : self } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & mut self ) -> _Oc4mW { _Oc4mW { w : self } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & mut self ) -> _Oc4peW { _Oc4peW { w : self } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & mut self ) -> _Oc4feW { _Oc4feW { w : self } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & mut self ) -> _Oc3ceW { _Oc3ceW { w : self } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & mut self ) -> _Oc3mW { _Oc3mW { w : self } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & mut self ) -> _Oc3peW { _Oc3peW { w : self } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & mut self ) -> _Oc3feW { _Oc3feW { w : self } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare mode register 2 (input mode)" ] pub struct Ccmr2Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (input mode)" ] pub mod ccmr2_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic4fR { bits : u8 , } impl Ic4fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic4pscR { bits : u8 , } impl Ic4pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3fR { bits : u8 , } impl Ic3fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3pscR { bits : u8 , } impl Ic3pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic4fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic4pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & self ) -> Ic4fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4fR { bits } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & self ) -> Ic4pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4pscR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & self ) -> Ic3fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3fR { bits } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & self ) -> Ic3pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3pscR { bits } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & mut self ) -> _Ic4fW { _Ic4fW { w : self } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & mut self ) -> _Ic4pscW { _Ic4pscW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & mut self ) -> _Ic3fW { _Ic3fW { w : self } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & mut self ) -> _Ic3pscW { _Ic3pscW { w : self } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4npR { bits : u8 , } impl Cc4npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4pR { bits : u8 , } impl Cc4pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4eR { bits : u8 , } impl Cc4eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3npR { bits : u8 , } impl Cc3npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3pR { bits : u8 , } impl Cc3pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3eR { bits : u8 , } impl Cc3eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2npR { bits : u8 , } impl Cc2npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2pR { bits : u8 , } impl Cc2pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2eR { bits : u8 , } impl Cc2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & self ) -> Cc4npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4npR { bits } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & self ) -> Cc4pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4pR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & self ) -> Cc4eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4eR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & self ) -> Cc3npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3npR { bits } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & self ) -> Cc3pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3pR { bits } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & self ) -> Cc3eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3eR { bits } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & self ) -> Cc2npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2npR { bits } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & self ) -> Cc2pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2pR { bits } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & self ) -> Cc2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2eR { bits } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & mut self ) -> _Cc4npW { _Cc4npW { w : self } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & mut self ) -> _Cc4pW { _Cc4pW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & mut self ) -> _Cc4eW { _Cc4eW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & mut self ) -> _Cc3npW { _Cc3npW { w : self } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & mut self ) -> _Cc3pW { _Cc3pW { w : self } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & mut self ) -> _Cc3eW { _Cc3eW { w : self } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & mut self ) -> _Cc2npW { _Cc2npW { w : self } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & mut self ) -> _Cc2pW { _Cc2pW { w : self } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & mut self ) -> _Cc2eW { _Cc2eW { w : self } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntHR { bits : u16 , } impl CntHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct CntLR { bits : u16 , } impl CntLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntHW < 'a > { w : & 'a mut W , } impl < 'a > _CntHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CntLW < 'a > { w : & 'a mut W , } impl < 'a > _CntLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & self ) -> CntHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntHR { bits } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & self ) -> CntLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & mut self ) -> _CntHW { _CntHW { w : self } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & mut self ) -> _CntLW { _CntLW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrHR { bits : u16 , } impl ArrHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArrLR { bits : u16 , } impl ArrLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrHW < 'a > { w : & 'a mut W , } impl < 'a > _ArrHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArrLW < 'a > { w : & 'a mut W , } impl < 'a > _ArrLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & self ) -> ArrHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrHR { bits } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & self ) -> ArrLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & mut self ) -> _ArrHW { _ArrHW { w : self } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & mut self ) -> _ArrLW { _ArrLW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1HR { bits : u16 , } impl Ccr1HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr1LR { bits : u16 , } impl Ccr1LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr1LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & self ) -> Ccr1HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & self ) -> Ccr1LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & mut self ) -> _Ccr1HW { _Ccr1HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & mut self ) -> _Ccr1LW { _Ccr1LW { w : self } } } } # [ doc = "capture/compare register 2" ] pub struct Ccr2 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 2" ] pub mod ccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr2HR { bits : u16 , } impl Ccr2HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr2LR { bits : u16 , } impl Ccr2LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr2HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr2LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & self ) -> Ccr2HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & self ) -> Ccr2LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & mut self ) -> _Ccr2HW { _Ccr2HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & mut self ) -> _Ccr2LW { _Ccr2LW { w : self } } } } # [ doc = "capture/compare register 3" ] pub struct Ccr3 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 3" ] pub mod ccr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr3HR { bits : u16 , } impl Ccr3HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr3LR { bits : u16 , } impl Ccr3LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr3HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr3LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & self ) -> Ccr3HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & self ) -> Ccr3LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & mut self ) -> _Ccr3HW { _Ccr3HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & mut self ) -> _Ccr3LW { _Ccr3LW { w : self } } } } # [ doc = "capture/compare register 4" ] pub struct Ccr4 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 4" ] pub mod ccr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr4HR { bits : u16 , } impl Ccr4HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr4LR { bits : u16 , } impl Ccr4LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr4HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr4LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & self ) -> Ccr4HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & self ) -> Ccr4LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & mut self ) -> _Ccr4HW { _Ccr4HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & mut self ) -> _Ccr4LW { _Ccr4LW { w : self } } } } # [ doc = "DMA control register" ] pub struct Dcr { register : VolatileCell < u32 > } # [ doc = "DMA control register" ] pub mod dcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DblR { bits : u8 , } impl DblR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbaR { bits : u8 , } impl DbaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DblW < 'a > { w : & 'a mut W , } impl < 'a > _DblW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbaW < 'a > { w : & 'a mut W , } impl < 'a > _DbaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & self ) -> DblR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DblR { bits } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & self ) -> DbaR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & mut self ) -> _DblW { _DblW { w : self } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & mut self ) -> _DbaW { _DbaW { w : self } } } } # [ doc = "DMA address for full transfer" ] pub struct Dmar { register : VolatileCell < u32 > } # [ doc = "DMA address for full transfer" ] pub mod dmar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmabR { bits : u16 , } impl DmabR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmabW < 'a > { w : & 'a mut W , } impl < 'a > _DmabW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & self ) -> DmabR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DmabR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & mut self ) -> _DmabW { _DmabW { w : self } } } } } # [ doc = "General purpose timers" ] pub struct Tim3 { register_block : tim3 :: RegisterBlock } impl Deref for Tim3 { type Target = tim3 :: RegisterBlock ; fn deref ( & self ) -> & tim3 :: RegisterBlock { & self . register_block } } # [ doc = "TIM4" ] pub const TIM4 : Peripheral < Tim4 > = unsafe { Peripheral :: new ( 1073743872 ) } ; # [ doc = r" Register block" ] pub struct Tim4 { register_block : tim3 :: RegisterBlock } impl Deref for Tim4 { type Target = tim3 :: RegisterBlock ; fn deref ( & self ) -> & tim3 :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose-timers" ] pub const TIM5 : Peripheral < Tim5 > = unsafe { Peripheral :: new ( 1073744896 ) } ; # [ doc = "General-purpose-timers" ] pub mod tim5 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - slave mode control register" ] pub smcr : Smcr , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ] pub ccmr2_output : Ccmr2Output , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , # [ doc = "0x38 - capture/compare register 2" ] pub ccr2 : Ccr2 , # [ doc = "0x3c - capture/compare register 3" ] pub ccr3 : Ccr3 , # [ doc = "0x40 - capture/compare register 4" ] pub ccr4 : Ccr4 , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x48 - DMA control register" ] pub dcr : Dcr , # [ doc = "0x4c - DMA address for full transfer" ] pub dmar : Dmar , # [ doc = "0x50 - TIM5 option register" ] pub or : Or , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CmsR { bits : u8 , } impl CmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DirR { bits : u8 , } impl DirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CmsW < 'a > { w : & 'a mut W , } impl < 'a > _CmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DirW < 'a > { w : & 'a mut W , } impl < 'a > _DirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & self ) -> CmsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmsR { bits } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & self ) -> DirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DirR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bits 5:6 - Center-aligned mode selection" ] # [ inline ( always ) ] pub fn cms ( & mut self ) -> _CmsW { _CmsW { w : self } } # [ doc = "Bit 4 - Direction" ] # [ inline ( always ) ] pub fn dir ( & mut self ) -> _DirW { _DirW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ti1sR { bits : u8 , } impl Ti1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CcdsR { bits : u8 , } impl CcdsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ti1sW < 'a > { w : & 'a mut W , } impl < 'a > _Ti1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CcdsW < 'a > { w : & 'a mut W , } impl < 'a > _CcdsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & self ) -> Ti1sR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ti1sR { bits } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & self ) -> CcdsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CcdsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - TI1 selection" ] # [ inline ( always ) ] pub fn ti1s ( & mut self ) -> _Ti1sW { _Ti1sW { w : self } } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } # [ doc = "Bit 3 - Capture/compare DMA selection" ] # [ inline ( always ) ] pub fn ccds ( & mut self ) -> _CcdsW { _CcdsW { w : self } } } } # [ doc = "slave mode control register" ] pub struct Smcr { register : VolatileCell < u32 > } # [ doc = "slave mode control register" ] pub mod smcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EtpR { bits : u8 , } impl EtpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EceR { bits : u8 , } impl EceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtpsR { bits : u8 , } impl EtpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtfR { bits : u8 , } impl EtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MsmR { bits : u8 , } impl MsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmsR { bits : u8 , } impl SmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EtpW < 'a > { w : & 'a mut W , } impl < 'a > _EtpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EceW < 'a > { w : & 'a mut W , } impl < 'a > _EceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtpsW < 'a > { w : & 'a mut W , } impl < 'a > _EtpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtfW < 'a > { w : & 'a mut W , } impl < 'a > _EtfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MsmW < 'a > { w : & 'a mut W , } impl < 'a > _MsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmsW < 'a > { w : & 'a mut W , } impl < 'a > _SmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & self ) -> EtpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpR { bits } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & self ) -> EceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EceR { bits } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & self ) -> EtpsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtpsR { bits } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & self ) -> EtfR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtfR { bits } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & self ) -> MsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsmR { bits } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & self ) -> SmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - External trigger polarity" ] # [ inline ( always ) ] pub fn etp ( & mut self ) -> _EtpW { _EtpW { w : self } } # [ doc = "Bit 14 - External clock enable" ] # [ inline ( always ) ] pub fn ece ( & mut self ) -> _EceW { _EceW { w : self } } # [ doc = "Bits 12:13 - External trigger prescaler" ] # [ inline ( always ) ] pub fn etps ( & mut self ) -> _EtpsW { _EtpsW { w : self } } # [ doc = "Bits 8:11 - External trigger filter" ] # [ inline ( always ) ] pub fn etf ( & mut self ) -> _EtfW { _EtfW { w : self } } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & mut self ) -> _MsmW { _MsmW { w : self } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & mut self ) -> _SmsW { _SmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TdeR { bits : u8 , } impl TdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4deR { bits : u8 , } impl Cc4deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3deR { bits : u8 , } impl Cc3deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2deR { bits : u8 , } impl Cc2deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1deR { bits : u8 , } impl Cc1deR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdeR { bits : u8 , } impl UdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ieR { bits : u8 , } impl Cc4ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ieR { bits : u8 , } impl Cc3ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ieR { bits : u8 , } impl Cc2ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TdeW < 'a > { w : & 'a mut W , } impl < 'a > _TdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1deW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1deW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdeW < 'a > { w : & 'a mut W , } impl < 'a > _UdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & self ) -> TdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TdeR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & self ) -> Cc4deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4deR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & self ) -> Cc3deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3deR { bits } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & self ) -> Cc2deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2deR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & self ) -> Cc1deR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1deR { bits } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & self ) -> UdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdeR { bits } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & self ) -> Cc4ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ieR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & self ) -> Cc3ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ieR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & self ) -> Cc2ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ieR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - Trigger DMA request enable" ] # [ inline ( always ) ] pub fn tde ( & mut self ) -> _TdeW { _TdeW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ] # [ inline ( always ) ] pub fn cc4de ( & mut self ) -> _Cc4deW { _Cc4deW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ] # [ inline ( always ) ] pub fn cc3de ( & mut self ) -> _Cc3deW { _Cc3deW { w : self } } # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ] # [ inline ( always ) ] pub fn cc2de ( & mut self ) -> _Cc2deW { _Cc2deW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ] # [ inline ( always ) ] pub fn cc1de ( & mut self ) -> _Cc1deW { _Cc1deW { w : self } } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & mut self ) -> _UdeW { _UdeW { w : self } } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ] # [ inline ( always ) ] pub fn cc4ie ( & mut self ) -> _Cc4ieW { _Cc4ieW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ] # [ inline ( always ) ] pub fn cc3ie ( & mut self ) -> _Cc3ieW { _Cc3ieW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & mut self ) -> _Cc2ieW { _Cc2ieW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4ofR { bits : u8 , } impl Cc4ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ofR { bits : u8 , } impl Cc3ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ofR { bits : u8 , } impl Cc2ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TifR { bits : u8 , } impl TifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4ifR { bits : u8 , } impl Cc4ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3ifR { bits : u8 , } impl Cc3ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ifR { bits : u8 , } impl Cc2ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TifW < 'a > { w : & 'a mut W , } impl < 'a > _TifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & self ) -> Cc4ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ofR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & self ) -> Cc3ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ofR { bits } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & self ) -> Cc2ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ofR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & self ) -> TifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifR { bits } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & self ) -> Cc4ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4ifR { bits } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & self ) -> Cc3ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3ifR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & self ) -> Cc2ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ifR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ] # [ inline ( always ) ] pub fn cc4of ( & mut self ) -> _Cc4ofW { _Cc4ofW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ] # [ inline ( always ) ] pub fn cc3of ( & mut self ) -> _Cc3ofW { _Cc3ofW { w : self } } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & mut self ) -> _Cc2ofW { _Cc2ofW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & mut self ) -> _TifW { _TifW { w : self } } # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ] # [ inline ( always ) ] pub fn cc4if ( & mut self ) -> _Cc4ifW { _Cc4ifW { w : self } } # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ] # [ inline ( always ) ] pub fn cc3if ( & mut self ) -> _Cc3ifW { _Cc3ifW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & mut self ) -> _Cc2ifW { _Cc2ifW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _TgW < 'a > { w : & 'a mut W , } impl < 'a > _TgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Trigger generation" ] # [ inline ( always ) ] pub fn tg ( & mut self ) -> _TgW { _TgW { w : self } } # [ doc = "Bit 4 - Capture/compare 4 generation" ] # [ inline ( always ) ] pub fn cc4g ( & mut self ) -> _Cc4gW { _Cc4gW { w : self } } # [ doc = "Bit 3 - Capture/compare 3 generation" ] # [ inline ( always ) ] pub fn cc3g ( & mut self ) -> _Cc3gW { _Cc3gW { w : self } } # [ doc = "Bit 2 - Capture/compare 2 generation" ] # [ inline ( always ) ] pub fn cc2g ( & mut self ) -> _Cc2gW { _Cc2gW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc2ceR { bits : u8 , } impl Oc2ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2mR { bits : u8 , } impl Oc2mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2peR { bits : u8 , } impl Oc2peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2feR { bits : u8 , } impl Oc2feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1ceR { bits : u8 , } impl Oc1ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc2ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & self ) -> Oc2ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2ceR { bits } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & self ) -> Oc2mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2mR { bits } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & self ) -> Oc2peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2peR { bits } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & self ) -> Oc2feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2feR { bits } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & self ) -> Oc1ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1ceR { bits } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - OC2CE" ] # [ inline ( always ) ] pub fn oc2ce ( & mut self ) -> _Oc2ceW { _Oc2ceW { w : self } } # [ doc = "Bits 12:14 - OC2M" ] # [ inline ( always ) ] pub fn oc2m ( & mut self ) -> _Oc2mW { _Oc2mW { w : self } } # [ doc = "Bit 11 - OC2PE" ] # [ inline ( always ) ] pub fn oc2pe ( & mut self ) -> _Oc2peW { _Oc2peW { w : self } } # [ doc = "Bit 10 - OC2FE" ] # [ inline ( always ) ] pub fn oc2fe ( & mut self ) -> _Oc2feW { _Oc2feW { w : self } } # [ doc = "Bits 8:9 - CC2S" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bit 7 - OC1CE" ] # [ inline ( always ) ] pub fn oc1ce ( & mut self ) -> _Oc1ceW { _Oc1ceW { w : self } } # [ doc = "Bits 4:6 - OC1M" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - OC1PE" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - OC1FE" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - CC1S" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic2fR { bits : u8 , } impl Ic2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic2pcsR { bits : u8 , } impl Ic2pcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic2fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic2pcsW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2pcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & self ) -> Ic2fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2fR { bits } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & self ) -> Ic2pcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2pcsR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & mut self ) -> _Ic2fW { _Ic2fW { w : self } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & mut self ) -> _Ic2pcsW { _Ic2pcsW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 2 (output mode)" ] pub struct Ccmr2Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (output mode)" ] pub mod ccmr2_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct O24ceR { bits : u8 , } impl O24ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4mR { bits : u8 , } impl Oc4mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4peR { bits : u8 , } impl Oc4peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc4feR { bits : u8 , } impl Oc4feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3ceR { bits : u8 , } impl Oc3ceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3mR { bits : u8 , } impl Oc3mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3peR { bits : u8 , } impl Oc3peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc3feR { bits : u8 , } impl Oc3feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _O24ceW < 'a > { w : & 'a mut W , } impl < 'a > _O24ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc4feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc4feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3ceW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3ceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc3feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc3feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & self ) -> O24ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; O24ceR { bits } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & self ) -> Oc4mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4mR { bits } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & self ) -> Oc4peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4peR { bits } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & self ) -> Oc4feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc4feR { bits } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & self ) -> Oc3ceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3ceR { bits } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & self ) -> Oc3mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3mR { bits } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & self ) -> Oc3peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3peR { bits } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & self ) -> Oc3feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc3feR { bits } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - O24CE" ] # [ inline ( always ) ] pub fn o24ce ( & mut self ) -> _O24ceW { _O24ceW { w : self } } # [ doc = "Bits 12:14 - OC4M" ] # [ inline ( always ) ] pub fn oc4m ( & mut self ) -> _Oc4mW { _Oc4mW { w : self } } # [ doc = "Bit 11 - OC4PE" ] # [ inline ( always ) ] pub fn oc4pe ( & mut self ) -> _Oc4peW { _Oc4peW { w : self } } # [ doc = "Bit 10 - OC4FE" ] # [ inline ( always ) ] pub fn oc4fe ( & mut self ) -> _Oc4feW { _Oc4feW { w : self } } # [ doc = "Bits 8:9 - CC4S" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bit 7 - OC3CE" ] # [ inline ( always ) ] pub fn oc3ce ( & mut self ) -> _Oc3ceW { _Oc3ceW { w : self } } # [ doc = "Bits 4:6 - OC3M" ] # [ inline ( always ) ] pub fn oc3m ( & mut self ) -> _Oc3mW { _Oc3mW { w : self } } # [ doc = "Bit 3 - OC3PE" ] # [ inline ( always ) ] pub fn oc3pe ( & mut self ) -> _Oc3peW { _Oc3peW { w : self } } # [ doc = "Bit 2 - OC3FE" ] # [ inline ( always ) ] pub fn oc3fe ( & mut self ) -> _Oc3feW { _Oc3feW { w : self } } # [ doc = "Bits 0:1 - CC3S" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare mode register 2 (input mode)" ] pub struct Ccmr2Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 2 (input mode)" ] pub mod ccmr2_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr2Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic4fR { bits : u8 , } impl Ic4fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic4pscR { bits : u8 , } impl Ic4pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4sR { bits : u8 , } impl Cc4sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3fR { bits : u8 , } impl Ic3fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic3pscR { bits : u8 , } impl Ic3pscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3sR { bits : u8 , } impl Cc3sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic4fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic4pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic4pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic3pscW < 'a > { w : & 'a mut W , } impl < 'a > _Ic3pscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & self ) -> Ic4fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4fR { bits } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & self ) -> Ic4pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic4pscR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & self ) -> Cc4sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4sR { bits } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & self ) -> Ic3fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3fR { bits } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & self ) -> Ic3pscR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic3pscR { bits } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & self ) -> Cc3sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:15 - Input capture 4 filter" ] # [ inline ( always ) ] pub fn ic4f ( & mut self ) -> _Ic4fW { _Ic4fW { w : self } } # [ doc = "Bits 10:11 - Input capture 4 prescaler" ] # [ inline ( always ) ] pub fn ic4psc ( & mut self ) -> _Ic4pscW { _Ic4pscW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ] # [ inline ( always ) ] pub fn cc4s ( & mut self ) -> _Cc4sW { _Cc4sW { w : self } } # [ doc = "Bits 4:7 - Input capture 3 filter" ] # [ inline ( always ) ] pub fn ic3f ( & mut self ) -> _Ic3fW { _Ic3fW { w : self } } # [ doc = "Bits 2:3 - Input capture 3 prescaler" ] # [ inline ( always ) ] pub fn ic3psc ( & mut self ) -> _Ic3pscW { _Ic3pscW { w : self } } # [ doc = "Bits 0:1 - Capture/compare 3 selection" ] # [ inline ( always ) ] pub fn cc3s ( & mut self ) -> _Cc3sW { _Cc3sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc4npR { bits : u8 , } impl Cc4npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4pR { bits : u8 , } impl Cc4pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc4eR { bits : u8 , } impl Cc4eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3npR { bits : u8 , } impl Cc3npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3pR { bits : u8 , } impl Cc3pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc3eR { bits : u8 , } impl Cc3eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2npR { bits : u8 , } impl Cc2npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2pR { bits : u8 , } impl Cc2pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2eR { bits : u8 , } impl Cc2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc4npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc4eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc4eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc3eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc3eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & self ) -> Cc4npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4npR { bits } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & self ) -> Cc4pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4pR { bits } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & self ) -> Cc4eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc4eR { bits } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & self ) -> Cc3npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3npR { bits } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & self ) -> Cc3pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3pR { bits } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & self ) -> Cc3eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc3eR { bits } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & self ) -> Cc2npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2npR { bits } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & self ) -> Cc2pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2pR { bits } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & self ) -> Cc2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2eR { bits } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ] # [ inline ( always ) ] pub fn cc4np ( & mut self ) -> _Cc4npW { _Cc4npW { w : self } } # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc4p ( & mut self ) -> _Cc4pW { _Cc4pW { w : self } } # [ doc = "Bit 12 - Capture/Compare 4 output enable" ] # [ inline ( always ) ] pub fn cc4e ( & mut self ) -> _Cc4eW { _Cc4eW { w : self } } # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3np ( & mut self ) -> _Cc3npW { _Cc3npW { w : self } } # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ] # [ inline ( always ) ] pub fn cc3p ( & mut self ) -> _Cc3pW { _Cc3pW { w : self } } # [ doc = "Bit 8 - Capture/Compare 3 output enable" ] # [ inline ( always ) ] pub fn cc3e ( & mut self ) -> _Cc3eW { _Cc3eW { w : self } } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & mut self ) -> _Cc2npW { _Cc2npW { w : self } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & mut self ) -> _Cc2pW { _Cc2pW { w : self } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & mut self ) -> _Cc2eW { _Cc2eW { w : self } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntHR { bits : u16 , } impl CntHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct CntLR { bits : u16 , } impl CntLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntHW < 'a > { w : & 'a mut W , } impl < 'a > _CntHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CntLW < 'a > { w : & 'a mut W , } impl < 'a > _CntLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & self ) -> CntHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntHR { bits } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & self ) -> CntLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High counter value" ] # [ inline ( always ) ] pub fn cnt_h ( & mut self ) -> _CntHW { _CntHW { w : self } } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt_l ( & mut self ) -> _CntLW { _CntLW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrHR { bits : u16 , } impl ArrHR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArrLR { bits : u16 , } impl ArrLR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrHW < 'a > { w : & 'a mut W , } impl < 'a > _ArrHW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArrLW < 'a > { w : & 'a mut W , } impl < 'a > _ArrLW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & self ) -> ArrHR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrHR { bits } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & self ) -> ArrLR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrLR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Auto-reload value" ] # [ inline ( always ) ] pub fn arr_h ( & mut self ) -> _ArrHW { _ArrHW { w : self } } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr_l ( & mut self ) -> _ArrLW { _ArrLW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1HR { bits : u16 , } impl Ccr1HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr1LR { bits : u16 , } impl Ccr1LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr1LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & self ) -> Ccr1HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & self ) -> Ccr1LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_h ( & mut self ) -> _Ccr1HW { _Ccr1HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1_l ( & mut self ) -> _Ccr1LW { _Ccr1LW { w : self } } } } # [ doc = "capture/compare register 2" ] pub struct Ccr2 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 2" ] pub mod ccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr2HR { bits : u16 , } impl Ccr2HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr2LR { bits : u16 , } impl Ccr2LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr2HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr2LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & self ) -> Ccr2HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & self ) -> Ccr2LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_h ( & mut self ) -> _Ccr2HW { _Ccr2HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2_l ( & mut self ) -> _Ccr2LW { _Ccr2LW { w : self } } } } # [ doc = "capture/compare register 3" ] pub struct Ccr3 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 3" ] pub mod ccr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr3HR { bits : u16 , } impl Ccr3HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr3LR { bits : u16 , } impl Ccr3LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr3HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr3LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr3LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & self ) -> Ccr3HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & self ) -> Ccr3LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr3LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_h ( & mut self ) -> _Ccr3HW { _Ccr3HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr3_l ( & mut self ) -> _Ccr3LW { _Ccr3LW { w : self } } } } # [ doc = "capture/compare register 4" ] pub struct Ccr4 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 4" ] pub mod ccr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr4HR { bits : u16 , } impl Ccr4HR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ccr4LR { bits : u16 , } impl Ccr4LR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr4HW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4HW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ccr4LW < 'a > { w : & 'a mut W , } impl < 'a > _Ccr4LW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & self ) -> Ccr4HR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4HR { bits } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & self ) -> Ccr4LR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr4LR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - High Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_h ( & mut self ) -> _Ccr4HW { _Ccr4HW { w : self } } # [ doc = "Bits 0:15 - Low Capture/Compare value" ] # [ inline ( always ) ] pub fn ccr4_l ( & mut self ) -> _Ccr4LW { _Ccr4LW { w : self } } } } # [ doc = "DMA control register" ] pub struct Dcr { register : VolatileCell < u32 > } # [ doc = "DMA control register" ] pub mod dcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DblR { bits : u8 , } impl DblR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbaR { bits : u8 , } impl DbaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DblW < 'a > { w : & 'a mut W , } impl < 'a > _DblW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbaW < 'a > { w : & 'a mut W , } impl < 'a > _DbaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & self ) -> DblR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DblR { bits } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & self ) -> DbaR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:12 - DMA burst length" ] # [ inline ( always ) ] pub fn dbl ( & mut self ) -> _DblW { _DblW { w : self } } # [ doc = "Bits 0:4 - DMA base address" ] # [ inline ( always ) ] pub fn dba ( & mut self ) -> _DbaW { _DbaW { w : self } } } } # [ doc = "DMA address for full transfer" ] pub struct Dmar { register : VolatileCell < u32 > } # [ doc = "DMA address for full transfer" ] pub mod dmar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmabR { bits : u16 , } impl DmabR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmabW < 'a > { w : & 'a mut W , } impl < 'a > _DmabW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & self ) -> DmabR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DmabR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - DMA register for burst accesses" ] # [ inline ( always ) ] pub fn dmab ( & mut self ) -> _DmabW { _DmabW { w : self } } } } # [ doc = "TIM5 option register" ] pub struct Or { register : VolatileCell < u32 > } # [ doc = "TIM5 option register" ] pub mod or { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Or { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct It4RmpR { bits : u8 , } impl It4RmpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _It4RmpW < 'a > { w : & 'a mut W , } impl < 'a > _It4RmpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 6:7 - Timer Input 4 remap" ] # [ inline ( always ) ] pub fn it4_rmp ( & self ) -> It4RmpR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; It4RmpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 6:7 - Timer Input 4 remap" ] # [ inline ( always ) ] pub fn it4_rmp ( & mut self ) -> _It4RmpW { _It4RmpW { w : self } } } } } # [ doc = "General-purpose-timers" ] pub struct Tim5 { register_block : tim5 :: RegisterBlock } impl Deref for Tim5 { type Target = tim5 :: RegisterBlock ; fn deref ( & self ) -> & tim5 :: RegisterBlock { & self . register_block } } # [ doc = "General purpose timers" ] pub const TIM9 : Peripheral < Tim9 > = unsafe { Peripheral :: new ( 1073823744 ) } ; # [ doc = "General purpose timers" ] pub mod tim9 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , # [ doc = "0x08 - slave mode control register" ] pub smcr : Smcr , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , # [ doc = "0x38 - capture/compare register 2" ] pub ccr2 : Ccr2 , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } } } # [ doc = "slave mode control register" ] pub struct Smcr { register : VolatileCell < u32 > } # [ doc = "slave mode control register" ] pub mod smcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Smcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MsmR { bits : u8 , } impl MsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SmsR { bits : u8 , } impl SmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MsmW < 'a > { w : & 'a mut W , } impl < 'a > _MsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SmsW < 'a > { w : & 'a mut W , } impl < 'a > _SmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & self ) -> MsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MsmR { bits } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & self ) -> SmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Master/Slave mode" ] # [ inline ( always ) ] pub fn msm ( & mut self ) -> _MsmW { _MsmW { w : self } } # [ doc = "Bits 4:6 - Trigger selection" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bits 0:2 - Slave mode selection" ] # [ inline ( always ) ] pub fn sms ( & mut self ) -> _SmsW { _SmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ieR { bits : u8 , } impl Cc2ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & self ) -> Cc2ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ieR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Trigger interrupt enable" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ] # [ inline ( always ) ] pub fn cc2ie ( & mut self ) -> _Cc2ieW { _Cc2ieW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc2ofR { bits : u8 , } impl Cc2ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TifR { bits : u8 , } impl TifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2ifR { bits : u8 , } impl Cc2ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc2ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TifW < 'a > { w : & 'a mut W , } impl < 'a > _TifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & self ) -> Cc2ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ofR { bits } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & self ) -> TifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TifR { bits } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & self ) -> Cc2ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2ifR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ] # [ inline ( always ) ] pub fn cc2of ( & mut self ) -> _Cc2ofW { _Cc2ofW { w : self } } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 6 - Trigger interrupt flag" ] # [ inline ( always ) ] pub fn tif ( & mut self ) -> _TifW { _TifW { w : self } } # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ] # [ inline ( always ) ] pub fn cc2if ( & mut self ) -> _Cc2ifW { _Cc2ifW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _TgW < 'a > { w : & 'a mut W , } impl < 'a > _TgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - Trigger generation" ] # [ inline ( always ) ] pub fn tg ( & mut self ) -> _TgW { _TgW { w : self } } # [ doc = "Bit 2 - Capture/compare 2 generation" ] # [ inline ( always ) ] pub fn cc2g ( & mut self ) -> _Cc2gW { _Cc2gW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc2mR { bits : u8 , } impl Oc2mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2peR { bits : u8 , } impl Oc2peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc2feR { bits : u8 , } impl Oc2feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc2mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc2feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc2feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:14 - Output Compare 2 mode" ] # [ inline ( always ) ] pub fn oc2m ( & self ) -> Oc2mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2mR { bits } } # [ doc = "Bit 11 - Output Compare 2 preload enable" ] # [ inline ( always ) ] pub fn oc2pe ( & self ) -> Oc2peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2peR { bits } } # [ doc = "Bit 10 - Output Compare 2 fast enable" ] # [ inline ( always ) ] pub fn oc2fe ( & self ) -> Oc2feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc2feR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:14 - Output Compare 2 mode" ] # [ inline ( always ) ] pub fn oc2m ( & mut self ) -> _Oc2mW { _Oc2mW { w : self } } # [ doc = "Bit 11 - Output Compare 2 preload enable" ] # [ inline ( always ) ] pub fn oc2pe ( & mut self ) -> _Oc2peW { _Oc2peW { w : self } } # [ doc = "Bit 10 - Output Compare 2 fast enable" ] # [ inline ( always ) ] pub fn oc2fe ( & mut self ) -> _Oc2feW { _Oc2feW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic2fR { bits : u8 , } impl Ic2fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic2pcsR { bits : u8 , } impl Ic2pcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2sR { bits : u8 , } impl Cc2sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic2fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic2pcsW < 'a > { w : & 'a mut W , } impl < 'a > _Ic2pcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 12:14 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & self ) -> Ic2fR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2fR { bits } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & self ) -> Ic2pcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic2pcsR { bits } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & self ) -> Cc2sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2sR { bits } } # [ doc = "Bits 4:6 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 12:14 - Input capture 2 filter" ] # [ inline ( always ) ] pub fn ic2f ( & mut self ) -> _Ic2fW { _Ic2fW { w : self } } # [ doc = "Bits 10:11 - Input capture 2 prescaler" ] # [ inline ( always ) ] pub fn ic2pcs ( & mut self ) -> _Ic2pcsW { _Ic2pcsW { w : self } } # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ] # [ inline ( always ) ] pub fn cc2s ( & mut self ) -> _Cc2sW { _Cc2sW { w : self } } # [ doc = "Bits 4:6 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc2npR { bits : u8 , } impl Cc2npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2pR { bits : u8 , } impl Cc2pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc2eR { bits : u8 , } impl Cc2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc2npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc2eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & self ) -> Cc2npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2npR { bits } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & self ) -> Cc2pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2pR { bits } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & self ) -> Cc2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc2eR { bits } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2np ( & mut self ) -> _Cc2npW { _Cc2npW { w : self } } # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ] # [ inline ( always ) ] pub fn cc2p ( & mut self ) -> _Cc2pW { _Cc2pW { w : self } } # [ doc = "Bit 4 - Capture/Compare 2 output enable" ] # [ inline ( always ) ] pub fn cc2e ( & mut self ) -> _Cc2eW { _Cc2eW { w : self } } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntR { bits : u16 , } impl CntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntW < 'a > { w : & 'a mut W , } impl < 'a > _CntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & self ) -> CntR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & mut self ) -> _CntW { _CntW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrR { bits : u16 , } impl ArrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrW < 'a > { w : & 'a mut W , } impl < 'a > _ArrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & self ) -> ArrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & mut self ) -> _ArrW { _ArrW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1R { bits : u16 , } impl Ccr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & self ) -> Ccr1R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & mut self ) -> _Ccr1W { _Ccr1W { w : self } } } } # [ doc = "capture/compare register 2" ] pub struct Ccr2 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 2" ] pub mod ccr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr2R { bits : u16 , } impl Ccr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr2W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2 ( & self ) -> Ccr2R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr2R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 2 value" ] # [ inline ( always ) ] pub fn ccr2 ( & mut self ) -> _Ccr2W { _Ccr2W { w : self } } } } } # [ doc = "General purpose timers" ] pub struct Tim9 { register_block : tim9 :: RegisterBlock } impl Deref for Tim9 { type Target = tim9 :: RegisterBlock ; fn deref ( & self ) -> & tim9 :: RegisterBlock { & self . register_block } } # [ doc = "TIM12" ] pub const TIM12 : Peripheral < Tim12 > = unsafe { Peripheral :: new ( 1073747968 ) } ; # [ doc = r" Register block" ] pub struct Tim12 { register_block : tim9 :: RegisterBlock } impl Deref for Tim12 { type Target = tim9 :: RegisterBlock ; fn deref ( & self ) -> & tim9 :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose-timers" ] pub const TIM10 : Peripheral < Tim10 > = unsafe { Peripheral :: new ( 1073824768 ) } ; # [ doc = "General-purpose-timers" ] pub mod tim10 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , _reserved0 : [ u8 ; 8usize ] , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved2 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntR { bits : u16 , } impl CntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntW < 'a > { w : & 'a mut W , } impl < 'a > _CntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & self ) -> CntR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & mut self ) -> _CntW { _CntW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrR { bits : u16 , } impl ArrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrW < 'a > { w : & 'a mut W , } impl < 'a > _ArrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & self ) -> ArrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & mut self ) -> _ArrW { _ArrW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1R { bits : u16 , } impl Ccr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & self ) -> Ccr1R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & mut self ) -> _Ccr1W { _Ccr1W { w : self } } } } } # [ doc = "General-purpose-timers" ] pub struct Tim10 { register_block : tim10 :: RegisterBlock } impl Deref for Tim10 { type Target = tim10 :: RegisterBlock ; fn deref ( & self ) -> & tim10 :: RegisterBlock { & self . register_block } } # [ doc = "TIM13" ] pub const TIM13 : Peripheral < Tim13 > = unsafe { Peripheral :: new ( 1073748992 ) } ; # [ doc = r" Register block" ] pub struct Tim13 { register_block : tim10 :: RegisterBlock } impl Deref for Tim13 { type Target = tim10 :: RegisterBlock ; fn deref ( & self ) -> & tim10 :: RegisterBlock { & self . register_block } } # [ doc = "TIM14" ] pub const TIM14 : Peripheral < Tim14 > = unsafe { Peripheral :: new ( 1073750016 ) } ; # [ doc = r" Register block" ] pub struct Tim14 { register_block : tim10 :: RegisterBlock } impl Deref for Tim14 { type Target = tim10 :: RegisterBlock ; fn deref ( & self ) -> & tim10 :: RegisterBlock { & self . register_block } } # [ doc = "General-purpose-timers" ] pub const TIM11 : Peripheral < Tim11 > = unsafe { Peripheral :: new ( 1073825792 ) } ; # [ doc = "General-purpose-timers" ] pub mod tim11 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , _reserved0 : [ u8 ; 8usize ] , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ] pub ccmr1_output : Ccmr1Output , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x20 - capture/compare enable register" ] pub ccer : Ccer , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , _reserved2 : [ u8 ; 4usize ] , # [ doc = "0x34 - capture/compare register 1" ] pub ccr1 : Ccr1 , _reserved3 : [ u8 ; 24usize ] , # [ doc = "0x50 - option register" ] pub or : Or , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CkdR { bits : u8 , } impl CkdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CkdW < 'a > { w : & 'a mut W , } impl < 'a > _CkdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & self ) -> CkdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CkdR { bits } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:9 - Clock division" ] # [ inline ( always ) ] pub fn ckd ( & mut self ) -> _CkdW { _CkdW { w : self } } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1ieR { bits : u8 , } impl Cc1ieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1ieW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & self ) -> Cc1ieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ieR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ] # [ inline ( always ) ] pub fn cc1ie ( & mut self ) -> _Cc1ieW { _Cc1ieW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1ofR { bits : u8 , } impl Cc1ofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1ifR { bits : u8 , } impl Cc1ifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1ofW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1ifW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1ifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & self ) -> Cc1ofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ofR { bits } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & self ) -> Cc1ifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1ifR { bits } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ] # [ inline ( always ) ] pub fn cc1of ( & mut self ) -> _Cc1ofW { _Cc1ofW { w : self } } # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ] # [ inline ( always ) ] pub fn cc1if ( & mut self ) -> _Cc1ifW { _Cc1ifW { w : self } } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _Cc1gW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1gW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Capture/compare 1 generation" ] # [ inline ( always ) ] pub fn cc1g ( & mut self ) -> _Cc1gW { _Cc1gW { w : self } } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "capture/compare mode register 1 (output mode)" ] pub struct Ccmr1Output { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (output mode)" ] pub mod ccmr1_output { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Output { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Oc1mR { bits : u8 , } impl Oc1mR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1peR { bits : u8 , } impl Oc1peR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oc1feR { bits : u8 , } impl Oc1feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Oc1mW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1mW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1peW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1peW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oc1feW < 'a > { w : & 'a mut W , } impl < 'a > _Oc1feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & self ) -> Oc1mR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1mR { bits } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & self ) -> Oc1peR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1peR { bits } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & self ) -> Oc1feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oc1feR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:6 - Output Compare 1 mode" ] # [ inline ( always ) ] pub fn oc1m ( & mut self ) -> _Oc1mW { _Oc1mW { w : self } } # [ doc = "Bit 3 - Output Compare 1 preload enable" ] # [ inline ( always ) ] pub fn oc1pe ( & mut self ) -> _Oc1peW { _Oc1peW { w : self } } # [ doc = "Bit 2 - Output Compare 1 fast enable" ] # [ inline ( always ) ] pub fn oc1fe ( & mut self ) -> _Oc1feW { _Oc1feW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare mode register 1 (input mode)" ] pub struct Ccmr1Input { register : VolatileCell < u32 > } # [ doc = "capture/compare mode register 1 (input mode)" ] pub mod ccmr1_input { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccmr1Input { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ic1fR { bits : u8 , } impl Ic1fR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcpcsR { bits : u8 , } impl IcpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1sR { bits : u8 , } impl Cc1sR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ic1fW < 'a > { w : & 'a mut W , } impl < 'a > _Ic1fW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcpcsW < 'a > { w : & 'a mut W , } impl < 'a > _IcpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1sW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1sW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & self ) -> Ic1fR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ic1fR { bits } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & self ) -> IcpcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcpcsR { bits } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & self ) -> Cc1sR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1sR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:7 - Input capture 1 filter" ] # [ inline ( always ) ] pub fn ic1f ( & mut self ) -> _Ic1fW { _Ic1fW { w : self } } # [ doc = "Bits 2:3 - Input capture 1 prescaler" ] # [ inline ( always ) ] pub fn icpcs ( & mut self ) -> _IcpcsW { _IcpcsW { w : self } } # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ] # [ inline ( always ) ] pub fn cc1s ( & mut self ) -> _Cc1sW { _Cc1sW { w : self } } } } # [ doc = "capture/compare enable register" ] pub struct Ccer { register : VolatileCell < u32 > } # [ doc = "capture/compare enable register" ] pub mod ccer { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccer { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Cc1npR { bits : u8 , } impl Cc1npR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1pR { bits : u8 , } impl Cc1pR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Cc1eR { bits : u8 , } impl Cc1eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Cc1npW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1npW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1pW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1pW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Cc1eW < 'a > { w : & 'a mut W , } impl < 'a > _Cc1eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & self ) -> Cc1npR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1npR { bits } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & self ) -> Cc1pR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1pR { bits } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & self ) -> Cc1eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Cc1eR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1np ( & mut self ) -> _Cc1npW { _Cc1npW { w : self } } # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ] # [ inline ( always ) ] pub fn cc1p ( & mut self ) -> _Cc1pW { _Cc1pW { w : self } } # [ doc = "Bit 0 - Capture/Compare 1 output enable" ] # [ inline ( always ) ] pub fn cc1e ( & mut self ) -> _Cc1eW { _Cc1eW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntR { bits : u16 , } impl CntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntW < 'a > { w : & 'a mut W , } impl < 'a > _CntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & self ) -> CntR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - counter value" ] # [ inline ( always ) ] pub fn cnt ( & mut self ) -> _CntW { _CntW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrR { bits : u16 , } impl ArrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrW < 'a > { w : & 'a mut W , } impl < 'a > _ArrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & self ) -> ArrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & mut self ) -> _ArrW { _ArrW { w : self } } } } # [ doc = "capture/compare register 1" ] pub struct Ccr1 { register : VolatileCell < u32 > } # [ doc = "capture/compare register 1" ] pub mod ccr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ccr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ccr1R { bits : u16 , } impl Ccr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ccr1W < 'a > { w : & 'a mut W , } impl < 'a > _Ccr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & self ) -> Ccr1R { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Ccr1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Capture/Compare 1 value" ] # [ inline ( always ) ] pub fn ccr1 ( & mut self ) -> _Ccr1W { _Ccr1W { w : self } } } } # [ doc = "option register" ] pub struct Or { register : VolatileCell < u32 > } # [ doc = "option register" ] pub mod or { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Or { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RmpR { bits : u8 , } impl RmpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RmpW < 'a > { w : & 'a mut W , } impl < 'a > _RmpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - Input 1 remapping capability" ] # [ inline ( always ) ] pub fn rmp ( & self ) -> RmpR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RmpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - Input 1 remapping capability" ] # [ inline ( always ) ] pub fn rmp ( & mut self ) -> _RmpW { _RmpW { w : self } } } } } # [ doc = "General-purpose-timers" ] pub struct Tim11 { register_block : tim11 :: RegisterBlock } impl Deref for Tim11 { type Target = tim11 :: RegisterBlock ; fn deref ( & self ) -> & tim11 :: RegisterBlock { & self . register_block } } # [ doc = "Basic timers" ] pub const TIM6 : Peripheral < Tim6 > = unsafe { Peripheral :: new ( 1073745920 ) } ; # [ doc = "Basic timers" ] pub mod tim6 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - control register 1" ] pub cr1 : Cr1 , # [ doc = "0x04 - control register 2" ] pub cr2 : Cr2 , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x0c - DMA/Interrupt enable register" ] pub dier : Dier , # [ doc = "0x10 - status register" ] pub sr : Sr , # [ doc = "0x14 - event generation register" ] pub egr : Egr , _reserved1 : [ u8 ; 12usize ] , # [ doc = "0x24 - counter" ] pub cnt : Cnt , # [ doc = "0x28 - prescaler" ] pub psc : Psc , # [ doc = "0x2c - auto-reload register" ] pub arr : Arr , } # [ doc = "control register 1" ] pub struct Cr1 { register : VolatileCell < u32 > } # [ doc = "control register 1" ] pub mod cr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArpeR { bits : u8 , } impl ArpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpmR { bits : u8 , } impl OpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UrsR { bits : u8 , } impl UrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UdisR { bits : u8 , } impl UdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CenR { bits : u8 , } impl CenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArpeW < 'a > { w : & 'a mut W , } impl < 'a > _ArpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpmW < 'a > { w : & 'a mut W , } impl < 'a > _OpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UrsW < 'a > { w : & 'a mut W , } impl < 'a > _UrsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UdisW < 'a > { w : & 'a mut W , } impl < 'a > _UdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CenW < 'a > { w : & 'a mut W , } impl < 'a > _CenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & self ) -> ArpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpeR { bits } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & self ) -> OpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpmR { bits } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & self ) -> UrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UrsR { bits } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & self ) -> UdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdisR { bits } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & self ) -> CenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 7 - Auto-reload preload enable" ] # [ inline ( always ) ] pub fn arpe ( & mut self ) -> _ArpeW { _ArpeW { w : self } } # [ doc = "Bit 3 - One-pulse mode" ] # [ inline ( always ) ] pub fn opm ( & mut self ) -> _OpmW { _OpmW { w : self } } # [ doc = "Bit 2 - Update request source" ] # [ inline ( always ) ] pub fn urs ( & mut self ) -> _UrsW { _UrsW { w : self } } # [ doc = "Bit 1 - Update disable" ] # [ inline ( always ) ] pub fn udis ( & mut self ) -> _UdisW { _UdisW { w : self } } # [ doc = "Bit 0 - Counter enable" ] # [ inline ( always ) ] pub fn cen ( & mut self ) -> _CenW { _CenW { w : self } } } } # [ doc = "control register 2" ] pub struct Cr2 { register : VolatileCell < u32 > } # [ doc = "control register 2" ] pub mod cr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MmsR { bits : u8 , } impl MmsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmsW < 'a > { w : & 'a mut W , } impl < 'a > _MmsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & self ) -> MmsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:6 - Master mode selection" ] # [ inline ( always ) ] pub fn mms ( & mut self ) -> _MmsW { _MmsW { w : self } } } } # [ doc = "DMA/Interrupt enable register" ] pub struct Dier { register : VolatileCell < u32 > } # [ doc = "DMA/Interrupt enable register" ] pub mod dier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct UdeR { bits : u8 , } impl UdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UieR { bits : u8 , } impl UieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _UdeW < 'a > { w : & 'a mut W , } impl < 'a > _UdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UieW < 'a > { w : & 'a mut W , } impl < 'a > _UieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & self ) -> UdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UdeR { bits } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & self ) -> UieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 8 - Update DMA request enable" ] # [ inline ( always ) ] pub fn ude ( & mut self ) -> _UdeW { _UdeW { w : self } } # [ doc = "Bit 0 - Update interrupt enable" ] # [ inline ( always ) ] pub fn uie ( & mut self ) -> _UieW { _UieW { w : self } } } } # [ doc = "status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct UifR { bits : u8 , } impl UifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _UifW < 'a > { w : & 'a mut W , } impl < 'a > _UifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & self ) -> UifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UifR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Update interrupt flag" ] # [ inline ( always ) ] pub fn uif ( & mut self ) -> _UifW { _UifW { w : self } } } } # [ doc = "event generation register" ] pub struct Egr { register : VolatileCell < u32 > } # [ doc = "event generation register" ] pub mod egr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Egr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _UgW < 'a > { w : & 'a mut W , } impl < 'a > _UgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Update generation" ] # [ inline ( always ) ] pub fn ug ( & mut self ) -> _UgW { _UgW { w : self } } } } # [ doc = "counter" ] pub struct Cnt { register : VolatileCell < u32 > } # [ doc = "counter" ] pub mod cnt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cnt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CntR { bits : u16 , } impl CntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _CntW < 'a > { w : & 'a mut W , } impl < 'a > _CntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt ( & self ) -> CntR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; CntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Low counter value" ] # [ inline ( always ) ] pub fn cnt ( & mut self ) -> _CntW { _CntW { w : self } } } } # [ doc = "prescaler" ] pub struct Psc { register : VolatileCell < u32 > } # [ doc = "prescaler" ] pub mod psc { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Psc { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PscR { bits : u16 , } impl PscR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PscW < 'a > { w : & 'a mut W , } impl < 'a > _PscW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & self ) -> PscR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PscR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Prescaler value" ] # [ inline ( always ) ] pub fn psc ( & mut self ) -> _PscW { _PscW { w : self } } } } # [ doc = "auto-reload register" ] pub struct Arr { register : VolatileCell < u32 > } # [ doc = "auto-reload register" ] pub mod arr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Arr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ArrR { bits : u16 , } impl ArrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _ArrW < 'a > { w : & 'a mut W , } impl < 'a > _ArrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & self ) -> ArrR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; ArrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Low Auto-reload value" ] # [ inline ( always ) ] pub fn arr ( & mut self ) -> _ArrW { _ArrW { w : self } } } } } # [ doc = "Basic timers" ] pub struct Tim6 { register_block : tim6 :: RegisterBlock } impl Deref for Tim6 { type Target = tim6 :: RegisterBlock ; fn deref ( & self ) -> & tim6 :: RegisterBlock { & self . register_block } } # [ doc = "TIM7" ] pub const TIM7 : Peripheral < Tim7 > = unsafe { Peripheral :: new ( 1073746944 ) } ; # [ doc = r" Register block" ] pub struct Tim7 { register_block : tim6 :: RegisterBlock } impl Deref for Tim7 { type Target = tim6 :: RegisterBlock ; fn deref ( & self ) -> & tim6 :: RegisterBlock { & self . register_block } } # [ doc = "Ethernet: media access control (MAC)" ] pub const ETHERNET_MAC : Peripheral < EthernetMac > = unsafe { Peripheral :: new ( 1073905664 ) } ; # [ doc = "Ethernet: media access control (MAC)" ] pub mod ethernet_mac { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Ethernet MAC configuration register" ] pub maccr : Maccr , # [ doc = "0x04 - Ethernet MAC frame filter register" ] pub macffr : Macffr , # [ doc = "0x08 - Ethernet MAC hash table high register" ] pub machthr : Machthr , # [ doc = "0x0c - Ethernet MAC hash table low register" ] pub machtlr : Machtlr , # [ doc = "0x10 - Ethernet MAC MII address register" ] pub macmiiar : Macmiiar , # [ doc = "0x14 - Ethernet MAC MII data register" ] pub macmiidr : Macmiidr , # [ doc = "0x18 - Ethernet MAC flow control register" ] pub macfcr : Macfcr , # [ doc = "0x1c - Ethernet MAC VLAN tag register" ] pub macvlantr : Macvlantr , _reserved0 : [ u8 ; 12usize ] , # [ doc = "0x2c - Ethernet MAC PMT control and status register" ] pub macpmtcsr : Macpmtcsr , _reserved1 : [ u8 ; 4usize ] , # [ doc = "0x34 - Ethernet MAC debug register" ] pub macdbgr : Macdbgr , # [ doc = "0x38 - Ethernet MAC interrupt status register" ] pub macsr : Macsr , # [ doc = "0x3c - Ethernet MAC interrupt mask register" ] pub macimr : Macimr , # [ doc = "0x40 - Ethernet MAC address 0 high register" ] pub maca0hr : Maca0hr , # [ doc = "0x44 - Ethernet MAC address 0 low register" ] pub maca0lr : Maca0lr , # [ doc = "0x48 - Ethernet MAC address 1 high register" ] pub maca1hr : Maca1hr , # [ doc = "0x4c - Ethernet MAC address1 low register" ] pub maca1lr : Maca1lr , # [ doc = "0x50 - Ethernet MAC address 2 high register" ] pub maca2hr : Maca2hr , # [ doc = "0x54 - Ethernet MAC address 2 low register" ] pub maca2lr : Maca2lr , # [ doc = "0x58 - Ethernet MAC address 3 high register" ] pub maca3hr : Maca3hr , # [ doc = "0x5c - Ethernet MAC address 3 low register" ] pub maca3lr : Maca3lr , } # [ doc = "Ethernet MAC configuration register" ] pub struct Maccr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC configuration register" ] pub mod maccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maccr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ReR { bits : u8 , } impl ReR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TeR { bits : u8 , } impl TeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcR { bits : u8 , } impl DcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BlR { bits : u8 , } impl BlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ApcsR { bits : u8 , } impl ApcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RdR { bits : u8 , } impl RdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IpcoR { bits : u8 , } impl IpcoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmR { bits : u8 , } impl DmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LmR { bits : u8 , } impl LmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RodR { bits : u8 , } impl RodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FesR { bits : u8 , } impl FesR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CsdR { bits : u8 , } impl CsdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IfgR { bits : u8 , } impl IfgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct JdR { bits : u8 , } impl JdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WdR { bits : u8 , } impl WdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CstfR { bits : u8 , } impl CstfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _ReW < 'a > { w : & 'a mut W , } impl < 'a > _ReW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TeW < 'a > { w : & 'a mut W , } impl < 'a > _TeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcW < 'a > { w : & 'a mut W , } impl < 'a > _DcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BlW < 'a > { w : & 'a mut W , } impl < 'a > _BlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ApcsW < 'a > { w : & 'a mut W , } impl < 'a > _ApcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RdW < 'a > { w : & 'a mut W , } impl < 'a > _RdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IpcoW < 'a > { w : & 'a mut W , } impl < 'a > _IpcoW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmW < 'a > { w : & 'a mut W , } impl < 'a > _DmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LmW < 'a > { w : & 'a mut W , } impl < 'a > _LmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RodW < 'a > { w : & 'a mut W , } impl < 'a > _RodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FesW < 'a > { w : & 'a mut W , } impl < 'a > _FesW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CsdW < 'a > { w : & 'a mut W , } impl < 'a > _CsdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IfgW < 'a > { w : & 'a mut W , } impl < 'a > _IfgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _JdW < 'a > { w : & 'a mut W , } impl < 'a > _JdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WdW < 'a > { w : & 'a mut W , } impl < 'a > _WdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CstfW < 'a > { w : & 'a mut W , } impl < 'a > _CstfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 2 - RE" ] # [ inline ( always ) ] pub fn re ( & self ) -> ReR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ReR { bits } } # [ doc = "Bit 3 - TE" ] # [ inline ( always ) ] pub fn te ( & self ) -> TeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TeR { bits } } # [ doc = "Bit 4 - DC" ] # [ inline ( always ) ] pub fn dc ( & self ) -> DcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcR { bits } } # [ doc = "Bits 5:6 - BL" ] # [ inline ( always ) ] pub fn bl ( & self ) -> BlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BlR { bits } } # [ doc = "Bit 7 - APCS" ] # [ inline ( always ) ] pub fn apcs ( & self ) -> ApcsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ApcsR { bits } } # [ doc = "Bit 9 - RD" ] # [ inline ( always ) ] pub fn rd ( & self ) -> RdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RdR { bits } } # [ doc = "Bit 10 - IPCO" ] # [ inline ( always ) ] pub fn ipco ( & self ) -> IpcoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IpcoR { bits } } # [ doc = "Bit 11 - DM" ] # [ inline ( always ) ] pub fn dm ( & self ) -> DmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmR { bits } } # [ doc = "Bit 12 - LM" ] # [ inline ( always ) ] pub fn lm ( & self ) -> LmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LmR { bits } } # [ doc = "Bit 13 - ROD" ] # [ inline ( always ) ] pub fn rod ( & self ) -> RodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RodR { bits } } # [ doc = "Bit 14 - FES" ] # [ inline ( always ) ] pub fn fes ( & self ) -> FesR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FesR { bits } } # [ doc = "Bit 16 - CSD" ] # [ inline ( always ) ] pub fn csd ( & self ) -> CsdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsdR { bits } } # [ doc = "Bits 17:19 - IFG" ] # [ inline ( always ) ] pub fn ifg ( & self ) -> IfgR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IfgR { bits } } # [ doc = "Bit 22 - JD" ] # [ inline ( always ) ] pub fn jd ( & self ) -> JdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; JdR { bits } } # [ doc = "Bit 23 - WD" ] # [ inline ( always ) ] pub fn wd ( & self ) -> WdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdR { bits } } # [ doc = "Bit 25 - CSTF" ] # [ inline ( always ) ] pub fn cstf ( & self ) -> CstfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CstfR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 32768 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 2 - RE" ] # [ inline ( always ) ] pub fn re ( & mut self ) -> _ReW { _ReW { w : self } } # [ doc = "Bit 3 - TE" ] # [ inline ( always ) ] pub fn te ( & mut self ) -> _TeW { _TeW { w : self } } # [ doc = "Bit 4 - DC" ] # [ inline ( always ) ] pub fn dc ( & mut self ) -> _DcW { _DcW { w : self } } # [ doc = "Bits 5:6 - BL" ] # [ inline ( always ) ] pub fn bl ( & mut self ) -> _BlW { _BlW { w : self } } # [ doc = "Bit 7 - APCS" ] # [ inline ( always ) ] pub fn apcs ( & mut self ) -> _ApcsW { _ApcsW { w : self } } # [ doc = "Bit 9 - RD" ] # [ inline ( always ) ] pub fn rd ( & mut self ) -> _RdW { _RdW { w : self } } # [ doc = "Bit 10 - IPCO" ] # [ inline ( always ) ] pub fn ipco ( & mut self ) -> _IpcoW { _IpcoW { w : self } } # [ doc = "Bit 11 - DM" ] # [ inline ( always ) ] pub fn dm ( & mut self ) -> _DmW { _DmW { w : self } } # [ doc = "Bit 12 - LM" ] # [ inline ( always ) ] pub fn lm ( & mut self ) -> _LmW { _LmW { w : self } } # [ doc = "Bit 13 - ROD" ] # [ inline ( always ) ] pub fn rod ( & mut self ) -> _RodW { _RodW { w : self } } # [ doc = "Bit 14 - FES" ] # [ inline ( always ) ] pub fn fes ( & mut self ) -> _FesW { _FesW { w : self } } # [ doc = "Bit 16 - CSD" ] # [ inline ( always ) ] pub fn csd ( & mut self ) -> _CsdW { _CsdW { w : self } } # [ doc = "Bits 17:19 - IFG" ] # [ inline ( always ) ] pub fn ifg ( & mut self ) -> _IfgW { _IfgW { w : self } } # [ doc = "Bit 22 - JD" ] # [ inline ( always ) ] pub fn jd ( & mut self ) -> _JdW { _JdW { w : self } } # [ doc = "Bit 23 - WD" ] # [ inline ( always ) ] pub fn wd ( & mut self ) -> _WdW { _WdW { w : self } } # [ doc = "Bit 25 - CSTF" ] # [ inline ( always ) ] pub fn cstf ( & mut self ) -> _CstfW { _CstfW { w : self } } } } # [ doc = "Ethernet MAC frame filter register" ] pub struct Macffr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC frame filter register" ] pub mod macffr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macffr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PmR { bits : u8 , } impl PmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HuR { bits : u8 , } impl HuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HmR { bits : u8 , } impl HmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DaifR { bits : u8 , } impl DaifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RamR { bits : u8 , } impl RamR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BfdR { bits : u8 , } impl BfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PcfR { bits : u8 , } impl PcfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SaifR { bits : u8 , } impl SaifR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SafR { bits : u8 , } impl SafR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HpfR { bits : u8 , } impl HpfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RaR { bits : u8 , } impl RaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PmW < 'a > { w : & 'a mut W , } impl < 'a > _PmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HuW < 'a > { w : & 'a mut W , } impl < 'a > _HuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HmW < 'a > { w : & 'a mut W , } impl < 'a > _HmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DaifW < 'a > { w : & 'a mut W , } impl < 'a > _DaifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RamW < 'a > { w : & 'a mut W , } impl < 'a > _RamW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BfdW < 'a > { w : & 'a mut W , } impl < 'a > _BfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PcfW < 'a > { w : & 'a mut W , } impl < 'a > _PcfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SaifW < 'a > { w : & 'a mut W , } impl < 'a > _SaifW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SafW < 'a > { w : & 'a mut W , } impl < 'a > _SafW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HpfW < 'a > { w : & 'a mut W , } impl < 'a > _HpfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RaW < 'a > { w : & 'a mut W , } impl < 'a > _RaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn pm ( & self ) -> PmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn hu ( & self ) -> HuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HuR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn hm ( & self ) -> HmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HmR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn daif ( & self ) -> DaifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DaifR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn ram ( & self ) -> RamR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RamR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn bfd ( & self ) -> BfdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BfdR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn pcf ( & self ) -> PcfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcfR { bits } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn saif ( & self ) -> SaifR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SaifR { bits } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn saf ( & self ) -> SafR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SafR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn hpf ( & self ) -> HpfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HpfR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ra ( & self ) -> RaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn pm ( & mut self ) -> _PmW { _PmW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn hu ( & mut self ) -> _HuW { _HuW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn hm ( & mut self ) -> _HmW { _HmW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn daif ( & mut self ) -> _DaifW { _DaifW { w : self } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn ram ( & mut self ) -> _RamW { _RamW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn bfd ( & mut self ) -> _BfdW { _BfdW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn pcf ( & mut self ) -> _PcfW { _PcfW { w : self } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn saif ( & mut self ) -> _SaifW { _SaifW { w : self } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn saf ( & mut self ) -> _SafW { _SafW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn hpf ( & mut self ) -> _HpfW { _HpfW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ra ( & mut self ) -> _RaW { _RaW { w : self } } } } # [ doc = "Ethernet MAC hash table high register" ] pub struct Machthr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC hash table high register" ] pub mod machthr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Machthr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HthR { bits : u32 , } impl HthR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _HthW < 'a > { w : & 'a mut W , } impl < 'a > _HthW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn hth ( & self ) -> HthR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HthR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn hth ( & mut self ) -> _HthW { _HthW { w : self } } } } # [ doc = "Ethernet MAC hash table low register" ] pub struct Machtlr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC hash table low register" ] pub mod machtlr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Machtlr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HtlR { bits : u32 , } impl HtlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _HtlW < 'a > { w : & 'a mut W , } impl < 'a > _HtlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn htl ( & self ) -> HtlR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HtlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn htl ( & mut self ) -> _HtlW { _HtlW { w : self } } } } # [ doc = "Ethernet MAC MII address register" ] pub struct Macmiiar { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC MII address register" ] pub mod macmiiar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macmiiar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MbR { bits : u8 , } impl MbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MwR { bits : u8 , } impl MwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CrR { bits : u8 , } impl CrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MrR { bits : u8 , } impl MrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PaR { bits : u8 , } impl PaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MbW < 'a > { w : & 'a mut W , } impl < 'a > _MbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MwW < 'a > { w : & 'a mut W , } impl < 'a > _MwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CrW < 'a > { w : & 'a mut W , } impl < 'a > _CrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MrW < 'a > { w : & 'a mut W , } impl < 'a > _MrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PaW < 'a > { w : & 'a mut W , } impl < 'a > _PaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn mb ( & self ) -> MbR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn mw ( & self ) -> MwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MwR { bits } } # [ doc = "Bits 2:4 - no description available" ] # [ inline ( always ) ] pub fn cr ( & self ) -> CrR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrR { bits } } # [ doc = "Bits 6:10 - no description available" ] # [ inline ( always ) ] pub fn mr ( & self ) -> MrR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MrR { bits } } # [ doc = "Bits 11:15 - no description available" ] # [ inline ( always ) ] pub fn pa ( & self ) -> PaR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn mb ( & mut self ) -> _MbW { _MbW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn mw ( & mut self ) -> _MwW { _MwW { w : self } } # [ doc = "Bits 2:4 - no description available" ] # [ inline ( always ) ] pub fn cr ( & mut self ) -> _CrW { _CrW { w : self } } # [ doc = "Bits 6:10 - no description available" ] # [ inline ( always ) ] pub fn mr ( & mut self ) -> _MrW { _MrW { w : self } } # [ doc = "Bits 11:15 - no description available" ] # [ inline ( always ) ] pub fn pa ( & mut self ) -> _PaW { _PaW { w : self } } } } # [ doc = "Ethernet MAC MII data register" ] pub struct Macmiidr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC MII data register" ] pub mod macmiidr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macmiidr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TdR { bits : u16 , } impl TdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _TdW < 'a > { w : & 'a mut W , } impl < 'a > _TdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn td ( & self ) -> TdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn td ( & mut self ) -> _TdW { _TdW { w : self } } } } # [ doc = "Ethernet MAC flow control register" ] pub struct Macfcr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC flow control register" ] pub mod macfcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macfcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FcbR { bits : u8 , } impl FcbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TfceR { bits : u8 , } impl TfceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RfceR { bits : u8 , } impl RfceR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UpfdR { bits : u8 , } impl UpfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PltR { bits : u8 , } impl PltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ZqpdR { bits : u8 , } impl ZqpdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtR { bits : u16 , } impl PtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _FcbW < 'a > { w : & 'a mut W , } impl < 'a > _FcbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TfceW < 'a > { w : & 'a mut W , } impl < 'a > _TfceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RfceW < 'a > { w : & 'a mut W , } impl < 'a > _RfceW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UpfdW < 'a > { w : & 'a mut W , } impl < 'a > _UpfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PltW < 'a > { w : & 'a mut W , } impl < 'a > _PltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ZqpdW < 'a > { w : & 'a mut W , } impl < 'a > _ZqpdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtW < 'a > { w : & 'a mut W , } impl < 'a > _PtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn fcb ( & self ) -> FcbR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FcbR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tfce ( & self ) -> TfceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TfceR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn rfce ( & self ) -> RfceR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RfceR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn upfd ( & self ) -> UpfdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UpfdR { bits } } # [ doc = "Bits 4:5 - no description available" ] # [ inline ( always ) ] pub fn plt ( & self ) -> PltR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PltR { bits } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn zqpd ( & self ) -> ZqpdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ZqpdR { bits } } # [ doc = "Bits 16:31 - no description available" ] # [ inline ( always ) ] pub fn pt ( & self ) -> PtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn fcb ( & mut self ) -> _FcbW { _FcbW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tfce ( & mut self ) -> _TfceW { _TfceW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn rfce ( & mut self ) -> _RfceW { _RfceW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn upfd ( & mut self ) -> _UpfdW { _UpfdW { w : self } } # [ doc = "Bits 4:5 - no description available" ] # [ inline ( always ) ] pub fn plt ( & mut self ) -> _PltW { _PltW { w : self } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn zqpd ( & mut self ) -> _ZqpdW { _ZqpdW { w : self } } # [ doc = "Bits 16:31 - no description available" ] # [ inline ( always ) ] pub fn pt ( & mut self ) -> _PtW { _PtW { w : self } } } } # [ doc = "Ethernet MAC VLAN tag register" ] pub struct Macvlantr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC VLAN tag register" ] pub mod macvlantr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macvlantr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct VlantiR { bits : u16 , } impl VlantiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct VlantcR { bits : u8 , } impl VlantcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _VlantiW < 'a > { w : & 'a mut W , } impl < 'a > _VlantiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VlantcW < 'a > { w : & 'a mut W , } impl < 'a > _VlantcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn vlanti ( & self ) -> VlantiR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; VlantiR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn vlantc ( & self ) -> VlantcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VlantcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn vlanti ( & mut self ) -> _VlantiW { _VlantiW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn vlantc ( & mut self ) -> _VlantcW { _VlantcW { w : self } } } } # [ doc = "Ethernet MAC PMT control and status register" ] pub struct Macpmtcsr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC PMT control and status register" ] pub mod macpmtcsr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macpmtcsr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PdR { bits : u8 , } impl PdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpeR { bits : u8 , } impl MpeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WfeR { bits : u8 , } impl WfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MprR { bits : u8 , } impl MprR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WfrR { bits : u8 , } impl WfrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GuR { bits : u8 , } impl GuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WffrprR { bits : u8 , } impl WffrprR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PdW < 'a > { w : & 'a mut W , } impl < 'a > _PdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpeW < 'a > { w : & 'a mut W , } impl < 'a > _MpeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WfeW < 'a > { w : & 'a mut W , } impl < 'a > _WfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MprW < 'a > { w : & 'a mut W , } impl < 'a > _MprW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WfrW < 'a > { w : & 'a mut W , } impl < 'a > _WfrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GuW < 'a > { w : & 'a mut W , } impl < 'a > _GuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WffrprW < 'a > { w : & 'a mut W , } impl < 'a > _WffrprW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn pd ( & self ) -> PdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PdR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn mpe ( & self ) -> MpeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MpeR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn wfe ( & self ) -> WfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WfeR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn mpr ( & self ) -> MprR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MprR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn wfr ( & self ) -> WfrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WfrR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn gu ( & self ) -> GuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GuR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn wffrpr ( & self ) -> WffrprR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WffrprR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn pd ( & mut self ) -> _PdW { _PdW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn mpe ( & mut self ) -> _MpeW { _MpeW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn wfe ( & mut self ) -> _WfeW { _WfeW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn mpr ( & mut self ) -> _MprW { _MprW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn wfr ( & mut self ) -> _WfrW { _WfrW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn gu ( & mut self ) -> _GuW { _GuW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn wffrpr ( & mut self ) -> _WffrprW { _WffrprW { w : self } } } } # [ doc = "Ethernet MAC debug register" ] pub struct Macdbgr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC debug register" ] pub mod macdbgr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Macdbgr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct CrR { bits : u8 , } impl CrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CsrR { bits : u8 , } impl CsrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RorR { bits : u8 , } impl RorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McfR { bits : u8 , } impl McfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McpR { bits : u8 , } impl McpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McfhpR { bits : u8 , } impl McfhpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - CR" ] # [ inline ( always ) ] pub fn cr ( & self ) -> CrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrR { bits } } # [ doc = "Bit 1 - CSR" ] # [ inline ( always ) ] pub fn csr ( & self ) -> CsrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsrR { bits } } # [ doc = "Bit 2 - ROR" ] # [ inline ( always ) ] pub fn ror ( & self ) -> RorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RorR { bits } } # [ doc = "Bit 3 - MCF" ] # [ inline ( always ) ] pub fn mcf ( & self ) -> McfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McfR { bits } } # [ doc = "Bit 4 - MCP" ] # [ inline ( always ) ] pub fn mcp ( & self ) -> McpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McpR { bits } } # [ doc = "Bit 5 - MCFHP" ] # [ inline ( always ) ] pub fn mcfhp ( & self ) -> McfhpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McfhpR { bits } } } } # [ doc = "Ethernet MAC interrupt status register" ] pub struct Macsr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC interrupt status register" ] pub mod macsr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macsr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PmtsR { bits : u8 , } impl PmtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmcsR { bits : u8 , } impl MmcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmcrsR { bits : u8 , } impl MmcrsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmctsR { bits : u8 , } impl MmctsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TstsR { bits : u8 , } impl TstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TstsW < 'a > { w : & 'a mut W , } impl < 'a > _TstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn pmts ( & self ) -> PmtsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmtsR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn mmcs ( & self ) -> MmcsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmcsR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn mmcrs ( & self ) -> MmcrsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmcrsR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn mmcts ( & self ) -> MmctsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmctsR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tsts ( & self ) -> TstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TstsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tsts ( & mut self ) -> _TstsW { _TstsW { w : self } } } } # [ doc = "Ethernet MAC interrupt mask register" ] pub struct Macimr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC interrupt mask register" ] pub mod macimr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Macimr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PmtimR { bits : u8 , } impl PmtimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TstimR { bits : u8 , } impl TstimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PmtimW < 'a > { w : & 'a mut W , } impl < 'a > _PmtimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TstimW < 'a > { w : & 'a mut W , } impl < 'a > _TstimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn pmtim ( & self ) -> PmtimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmtimR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tstim ( & self ) -> TstimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TstimR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn pmtim ( & mut self ) -> _PmtimW { _PmtimW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tstim ( & mut self ) -> _TstimW { _TstimW { w : self } } } } # [ doc = "Ethernet MAC address 0 high register" ] pub struct Maca0hr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 0 high register" ] pub mod maca0hr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca0hr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca0hR { bits : u16 , } impl Maca0hR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct MoR { bits : u8 , } impl MoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca0hW < 'a > { w : & 'a mut W , } impl < 'a > _Maca0hW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - MAC address0 high" ] # [ inline ( always ) ] pub fn maca0h ( & self ) -> Maca0hR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Maca0hR { bits } } # [ doc = "Bit 31 - Always 1" ] # [ inline ( always ) ] pub fn mo ( & self ) -> MoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MoR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1114111 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - MAC address0 high" ] # [ inline ( always ) ] pub fn maca0h ( & mut self ) -> _Maca0hW { _Maca0hW { w : self } } } } # [ doc = "Ethernet MAC address 0 low register" ] pub struct Maca0lr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 0 low register" ] pub mod maca0lr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca0lr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca0lR { bits : u32 , } impl Maca0lR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca0lW < 'a > { w : & 'a mut W , } impl < 'a > _Maca0lW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - 0" ] # [ inline ( always ) ] pub fn maca0l ( & self ) -> Maca0lR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Maca0lR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - 0" ] # [ inline ( always ) ] pub fn maca0l ( & mut self ) -> _Maca0lW { _Maca0lW { w : self } } } } # [ doc = "Ethernet MAC address 1 high register" ] pub struct Maca1hr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 1 high register" ] pub mod maca1hr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca1hr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca1hR { bits : u16 , } impl Maca1hR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbcR { bits : u8 , } impl MbcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SaR { bits : u8 , } impl SaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AeR { bits : u8 , } impl AeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca1hW < 'a > { w : & 'a mut W , } impl < 'a > _Maca1hW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbcW < 'a > { w : & 'a mut W , } impl < 'a > _MbcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SaW < 'a > { w : & 'a mut W , } impl < 'a > _SaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AeW < 'a > { w : & 'a mut W , } impl < 'a > _AeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn maca1h ( & self ) -> Maca1hR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Maca1hR { bits } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & self ) -> MbcR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbcR { bits } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & self ) -> SaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SaR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & self ) -> AeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 65535 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn maca1h ( & mut self ) -> _Maca1hW { _Maca1hW { w : self } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & mut self ) -> _MbcW { _MbcW { w : self } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & mut self ) -> _SaW { _SaW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & mut self ) -> _AeW { _AeW { w : self } } } } # [ doc = "Ethernet MAC address1 low register" ] pub struct Maca1lr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address1 low register" ] pub mod maca1lr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca1lr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca1lrR { bits : u32 , } impl Maca1lrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca1lrW < 'a > { w : & 'a mut W , } impl < 'a > _Maca1lrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn maca1lr ( & self ) -> Maca1lrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Maca1lrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn maca1lr ( & mut self ) -> _Maca1lrW { _Maca1lrW { w : self } } } } # [ doc = "Ethernet MAC address 2 high register" ] pub struct Maca2hr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 2 high register" ] pub mod maca2hr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca2hr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Mac2ahR { bits : u16 , } impl Mac2ahR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbcR { bits : u8 , } impl MbcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SaR { bits : u8 , } impl SaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AeR { bits : u8 , } impl AeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Mac2ahW < 'a > { w : & 'a mut W , } impl < 'a > _Mac2ahW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbcW < 'a > { w : & 'a mut W , } impl < 'a > _MbcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SaW < 'a > { w : & 'a mut W , } impl < 'a > _SaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AeW < 'a > { w : & 'a mut W , } impl < 'a > _AeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn mac2ah ( & self ) -> Mac2ahR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Mac2ahR { bits } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & self ) -> MbcR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbcR { bits } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & self ) -> SaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SaR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & self ) -> AeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 65535 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn mac2ah ( & mut self ) -> _Mac2ahW { _Mac2ahW { w : self } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & mut self ) -> _MbcW { _MbcW { w : self } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & mut self ) -> _SaW { _SaW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & mut self ) -> _AeW { _AeW { w : self } } } } # [ doc = "Ethernet MAC address 2 low register" ] pub struct Maca2lr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 2 low register" ] pub mod maca2lr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca2lr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca2lR { bits : u32 , } impl Maca2lR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca2lW < 'a > { w : & 'a mut W , } impl < 'a > _Maca2lW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 2147483647 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:30 - no description available" ] # [ inline ( always ) ] pub fn maca2l ( & self ) -> Maca2lR { let bits = { const MASK : u32 = 2147483647 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Maca2lR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:30 - no description available" ] # [ inline ( always ) ] pub fn maca2l ( & mut self ) -> _Maca2lW { _Maca2lW { w : self } } } } # [ doc = "Ethernet MAC address 3 high register" ] pub struct Maca3hr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 3 high register" ] pub mod maca3hr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca3hr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Maca3hR { bits : u16 , } impl Maca3hR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbcR { bits : u8 , } impl MbcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SaR { bits : u8 , } impl SaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AeR { bits : u8 , } impl AeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Maca3hW < 'a > { w : & 'a mut W , } impl < 'a > _Maca3hW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbcW < 'a > { w : & 'a mut W , } impl < 'a > _MbcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SaW < 'a > { w : & 'a mut W , } impl < 'a > _SaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AeW < 'a > { w : & 'a mut W , } impl < 'a > _AeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn maca3h ( & self ) -> Maca3hR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Maca3hR { bits } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & self ) -> MbcR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbcR { bits } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & self ) -> SaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SaR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & self ) -> AeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AeR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 65535 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn maca3h ( & mut self ) -> _Maca3hW { _Maca3hW { w : self } } # [ doc = "Bits 24:29 - no description available" ] # [ inline ( always ) ] pub fn mbc ( & mut self ) -> _MbcW { _MbcW { w : self } } # [ doc = "Bit 30 - no description available" ] # [ inline ( always ) ] pub fn sa ( & mut self ) -> _SaW { _SaW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn ae ( & mut self ) -> _AeW { _AeW { w : self } } } } # [ doc = "Ethernet MAC address 3 low register" ] pub struct Maca3lr { register : VolatileCell < u32 > } # [ doc = "Ethernet MAC address 3 low register" ] pub mod maca3lr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Maca3lr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Mbca3lR { bits : u32 , } impl Mbca3lR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _Mbca3lW < 'a > { w : & 'a mut W , } impl < 'a > _Mbca3lW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn mbca3l ( & self ) -> Mbca3lR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; Mbca3lR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn mbca3l ( & mut self ) -> _Mbca3lW { _Mbca3lW { w : self } } } } } # [ doc = "Ethernet: media access control (MAC)" ] pub struct EthernetMac { register_block : ethernet_mac :: RegisterBlock } impl Deref for EthernetMac { type Target = ethernet_mac :: RegisterBlock ; fn deref ( & self ) -> & ethernet_mac :: RegisterBlock { & self . register_block } } # [ doc = "Ethernet: MAC management counters" ] pub const ETHERNET_MMC : Peripheral < EthernetMmc > = unsafe { Peripheral :: new ( 1073905920 ) } ; # [ doc = "Ethernet: MAC management counters" ] pub mod ethernet_mmc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Ethernet MMC control register" ] pub mmccr : Mmccr , # [ doc = "0x04 - Ethernet MMC receive interrupt register" ] pub mmcrir : Mmcrir , # [ doc = "0x08 - Ethernet MMC transmit interrupt register" ] pub mmctir : Mmctir , # [ doc = "0x0c - Ethernet MMC receive interrupt mask register" ] pub mmcrimr : Mmcrimr , # [ doc = "0x10 - Ethernet MMC transmit interrupt mask register" ] pub mmctimr : Mmctimr , _reserved0 : [ u8 ; 56usize ] , # [ doc = "0x4c - Ethernet MMC transmitted good frames after a single collision counter" ] pub mmctgfsccr : Mmctgfsccr , # [ doc = "0x50 - Ethernet MMC transmitted good frames after more than a single collision" ] pub mmctgfmsccr : Mmctgfmsccr , _reserved1 : [ u8 ; 20usize ] , # [ doc = "0x68 - Ethernet MMC transmitted good frames counter register" ] pub mmctgfcr : Mmctgfcr , _reserved2 : [ u8 ; 40usize ] , # [ doc = "0x94 - Ethernet MMC received frames with CRC error counter register" ] pub mmcrfcecr : Mmcrfcecr , # [ doc = "0x98 - Ethernet MMC received frames with alignment error counter register" ] pub mmcrfaecr : Mmcrfaecr , _reserved3 : [ u8 ; 40usize ] , # [ doc = "0xc4 - MMC received good unicast frames counter register" ] pub mmcrgufcr : Mmcrgufcr , } # [ doc = "Ethernet MMC control register" ] pub struct Mmccr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC control register" ] pub mod mmccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mmccr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CrR { bits : u8 , } impl CrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CsrR { bits : u8 , } impl CsrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RorR { bits : u8 , } impl RorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McfR { bits : u8 , } impl McfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McpR { bits : u8 , } impl McpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McfhpR { bits : u8 , } impl McfhpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CrW < 'a > { w : & 'a mut W , } impl < 'a > _CrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CsrW < 'a > { w : & 'a mut W , } impl < 'a > _CsrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RorW < 'a > { w : & 'a mut W , } impl < 'a > _RorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McfW < 'a > { w : & 'a mut W , } impl < 'a > _McfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McpW < 'a > { w : & 'a mut W , } impl < 'a > _McpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McfhpW < 'a > { w : & 'a mut W , } impl < 'a > _McfhpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn cr ( & self ) -> CrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CrR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn csr ( & self ) -> CsrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsrR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn ror ( & self ) -> RorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RorR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn mcf ( & self ) -> McfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McfR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn mcp ( & self ) -> McpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McpR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn mcfhp ( & self ) -> McfhpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McfhpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn cr ( & mut self ) -> _CrW { _CrW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn csr ( & mut self ) -> _CsrW { _CsrW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn ror ( & mut self ) -> _RorW { _RorW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn mcf ( & mut self ) -> _McfW { _McfW { w : self } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn mcp ( & mut self ) -> _McpW { _McpW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn mcfhp ( & mut self ) -> _McfhpW { _McfhpW { w : self } } } } # [ doc = "Ethernet MMC receive interrupt register" ] pub struct Mmcrir { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC receive interrupt register" ] pub mod mmcrir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mmcrir { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RfcesR { bits : u8 , } impl RfcesR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RfaesR { bits : u8 , } impl RfaesR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RgufsR { bits : u8 , } impl RgufsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RfcesW < 'a > { w : & 'a mut W , } impl < 'a > _RfcesW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RfaesW < 'a > { w : & 'a mut W , } impl < 'a > _RfaesW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RgufsW < 'a > { w : & 'a mut W , } impl < 'a > _RgufsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn rfces ( & self ) -> RfcesR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RfcesR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rfaes ( & self ) -> RfaesR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RfaesR { bits } } # [ doc = "Bit 17 - no description available" ] # [ inline ( always ) ] pub fn rgufs ( & self ) -> RgufsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RgufsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn rfces ( & mut self ) -> _RfcesW { _RfcesW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rfaes ( & mut self ) -> _RfaesW { _RfaesW { w : self } } # [ doc = "Bit 17 - no description available" ] # [ inline ( always ) ] pub fn rgufs ( & mut self ) -> _RgufsW { _RgufsW { w : self } } } } # [ doc = "Ethernet MMC transmit interrupt register" ] pub struct Mmctir { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC transmit interrupt register" ] pub mod mmctir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmctir { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TgfscsR { bits : u8 , } impl TgfscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgfmscsR { bits : u8 , } impl TgfmscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgfsR { bits : u8 , } impl TgfsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn tgfscs ( & self ) -> TgfscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfscsR { bits } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn tgfmscs ( & self ) -> TgfmscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfmscsR { bits } } # [ doc = "Bit 21 - no description available" ] # [ inline ( always ) ] pub fn tgfs ( & self ) -> TgfsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfsR { bits } } } } # [ doc = "Ethernet MMC receive interrupt mask register" ] pub struct Mmcrimr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC receive interrupt mask register" ] pub mod mmcrimr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mmcrimr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RfcemR { bits : u8 , } impl RfcemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RfaemR { bits : u8 , } impl RfaemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RgufmR { bits : u8 , } impl RgufmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RfcemW < 'a > { w : & 'a mut W , } impl < 'a > _RfcemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RfaemW < 'a > { w : & 'a mut W , } impl < 'a > _RfaemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RgufmW < 'a > { w : & 'a mut W , } impl < 'a > _RgufmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn rfcem ( & self ) -> RfcemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RfcemR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rfaem ( & self ) -> RfaemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RfaemR { bits } } # [ doc = "Bit 17 - no description available" ] # [ inline ( always ) ] pub fn rgufm ( & self ) -> RgufmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RgufmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn rfcem ( & mut self ) -> _RfcemW { _RfcemW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rfaem ( & mut self ) -> _RfaemW { _RfaemW { w : self } } # [ doc = "Bit 17 - no description available" ] # [ inline ( always ) ] pub fn rgufm ( & mut self ) -> _RgufmW { _RgufmW { w : self } } } } # [ doc = "Ethernet MMC transmit interrupt mask register" ] pub struct Mmctimr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC transmit interrupt mask register" ] pub mod mmctimr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mmctimr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TgfscmR { bits : u8 , } impl TgfscmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgfmscmR { bits : u8 , } impl TgfmscmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgfmR { bits : u8 , } impl TgfmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TgfscmW < 'a > { w : & 'a mut W , } impl < 'a > _TgfscmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgfmscmW < 'a > { w : & 'a mut W , } impl < 'a > _TgfmscmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgfmW < 'a > { w : & 'a mut W , } impl < 'a > _TgfmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn tgfscm ( & self ) -> TgfscmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfscmR { bits } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn tgfmscm ( & self ) -> TgfmscmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfmscmR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn tgfm ( & self ) -> TgfmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgfmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn tgfscm ( & mut self ) -> _TgfscmW { _TgfscmW { w : self } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn tgfmscm ( & mut self ) -> _TgfmscmW { _TgfmscmW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn tgfm ( & mut self ) -> _TgfmW { _TgfmW { w : self } } } } # [ doc = "Ethernet MMC transmitted good frames after a single collision counter" ] pub struct Mmctgfsccr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC transmitted good frames after a single collision counter" ] pub mod mmctgfsccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmctgfsccr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TgfsccR { bits : u32 , } impl TgfsccR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tgfscc ( & self ) -> TgfsccR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TgfsccR { bits } } } } # [ doc = "Ethernet MMC transmitted good frames after more than a single collision" ] pub struct Mmctgfmsccr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC transmitted good frames after more than a single collision" ] pub mod mmctgfmsccr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmctgfmsccr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TgfmsccR { bits : u32 , } impl TgfmsccR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tgfmscc ( & self ) -> TgfmsccR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TgfmsccR { bits } } } } # [ doc = "Ethernet MMC transmitted good frames counter register" ] pub struct Mmctgfcr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC transmitted good frames counter register" ] pub mod mmctgfcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmctgfcr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TgfcR { bits : u32 , } impl TgfcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - HTL" ] # [ inline ( always ) ] pub fn tgfc ( & self ) -> TgfcR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TgfcR { bits } } } } # [ doc = "Ethernet MMC received frames with CRC error counter register" ] pub struct Mmcrfcecr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC received frames with CRC error counter register" ] pub mod mmcrfcecr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmcrfcecr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RfcfcR { bits : u32 , } impl RfcfcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn rfcfc ( & self ) -> RfcfcR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; RfcfcR { bits } } } } # [ doc = "Ethernet MMC received frames with alignment error counter register" ] pub struct Mmcrfaecr { register : VolatileCell < u32 > } # [ doc = "Ethernet MMC received frames with alignment error counter register" ] pub mod mmcrfaecr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmcrfaecr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RfaecR { bits : u32 , } impl RfaecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn rfaec ( & self ) -> RfaecR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; RfaecR { bits } } } } # [ doc = "MMC received good unicast frames counter register" ] pub struct Mmcrgufcr { register : VolatileCell < u32 > } # [ doc = "MMC received good unicast frames counter register" ] pub mod mmcrgufcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Mmcrgufcr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct RgufcR { bits : u32 , } impl RgufcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn rgufc ( & self ) -> RgufcR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; RgufcR { bits } } } } } # [ doc = "Ethernet: MAC management counters" ] pub struct EthernetMmc { register_block : ethernet_mmc :: RegisterBlock } impl Deref for EthernetMmc { type Target = ethernet_mmc :: RegisterBlock ; fn deref ( & self ) -> & ethernet_mmc :: RegisterBlock { & self . register_block } } # [ doc = "Ethernet: Precision time protocol" ] pub const ETHERNET_PTP : Peripheral < EthernetPtp > = unsafe { Peripheral :: new ( 1073907456 ) } ; # [ doc = "Ethernet: Precision time protocol" ] pub mod ethernet_ptp { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Ethernet PTP time stamp control register" ] pub ptptscr : Ptptscr , # [ doc = "0x04 - Ethernet PTP subsecond increment register" ] pub ptpssir : Ptpssir , # [ doc = "0x08 - Ethernet PTP time stamp high register" ] pub ptptshr : Ptptshr , # [ doc = "0x0c - Ethernet PTP time stamp low register" ] pub ptptslr : Ptptslr , # [ doc = "0x10 - Ethernet PTP time stamp high update register" ] pub ptptshur : Ptptshur , # [ doc = "0x14 - Ethernet PTP time stamp low update register" ] pub ptptslur : Ptptslur , # [ doc = "0x18 - Ethernet PTP time stamp addend register" ] pub ptptsar : Ptptsar , # [ doc = "0x1c - Ethernet PTP target time high register" ] pub ptptthr : Ptptthr , # [ doc = "0x20 - Ethernet PTP target time low register" ] pub ptpttlr : Ptpttlr , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x28 - Ethernet PTP time stamp status register" ] pub ptptssr : Ptptssr , # [ doc = "0x2c - Ethernet PTP PPS control register" ] pub ptpppscr : Ptpppscr , } # [ doc = "Ethernet PTP time stamp control register" ] pub struct Ptptscr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp control register" ] pub mod ptptscr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptptscr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TseR { bits : u8 , } impl TseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsfcuR { bits : u8 , } impl TsfcuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tsptppsv2eR { bits : u8 , } impl Tsptppsv2eR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TssptpoefeR { bits : u8 , } impl TssptpoefeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tssipv6feR { bits : u8 , } impl Tssipv6feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tssipv4feR { bits : u8 , } impl Tssipv4feR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TssemeR { bits : u8 , } impl TssemeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TssmrmeR { bits : u8 , } impl TssmrmeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TscntR { bits : u8 , } impl TscntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TspffmaeR { bits : u8 , } impl TspffmaeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsstiR { bits : u8 , } impl TsstiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsstuR { bits : u8 , } impl TsstuR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsiteR { bits : u8 , } impl TsiteR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TtsaruR { bits : u8 , } impl TtsaruR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TssarfeR { bits : u8 , } impl TssarfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsssrR { bits : u8 , } impl TsssrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TseW < 'a > { w : & 'a mut W , } impl < 'a > _TseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsfcuW < 'a > { w : & 'a mut W , } impl < 'a > _TsfcuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tsptppsv2eW < 'a > { w : & 'a mut W , } impl < 'a > _Tsptppsv2eW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TssptpoefeW < 'a > { w : & 'a mut W , } impl < 'a > _TssptpoefeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tssipv6feW < 'a > { w : & 'a mut W , } impl < 'a > _Tssipv6feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tssipv4feW < 'a > { w : & 'a mut W , } impl < 'a > _Tssipv4feW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TssemeW < 'a > { w : & 'a mut W , } impl < 'a > _TssemeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TssmrmeW < 'a > { w : & 'a mut W , } impl < 'a > _TssmrmeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TscntW < 'a > { w : & 'a mut W , } impl < 'a > _TscntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TspffmaeW < 'a > { w : & 'a mut W , } impl < 'a > _TspffmaeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsstiW < 'a > { w : & 'a mut W , } impl < 'a > _TsstiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsstuW < 'a > { w : & 'a mut W , } impl < 'a > _TsstuW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsiteW < 'a > { w : & 'a mut W , } impl < 'a > _TsiteW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TtsaruW < 'a > { w : & 'a mut W , } impl < 'a > _TtsaruW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TssarfeW < 'a > { w : & 'a mut W , } impl < 'a > _TssarfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsssrW < 'a > { w : & 'a mut W , } impl < 'a > _TsssrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn tse ( & self ) -> TseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TseR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tsfcu ( & self ) -> TsfcuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsfcuR { bits } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn tsptppsv2e ( & self ) -> Tsptppsv2eR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tsptppsv2eR { bits } } # [ doc = "Bit 11 - no description available" ] # [ inline ( always ) ] pub fn tssptpoefe ( & self ) -> TssptpoefeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssptpoefeR { bits } } # [ doc = "Bit 12 - no description available" ] # [ inline ( always ) ] pub fn tssipv6fe ( & self ) -> Tssipv6feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tssipv6feR { bits } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn tssipv4fe ( & self ) -> Tssipv4feR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tssipv4feR { bits } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn tsseme ( & self ) -> TssemeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssemeR { bits } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn tssmrme ( & self ) -> TssmrmeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssmrmeR { bits } } # [ doc = "Bits 16:17 - no description available" ] # [ inline ( always ) ] pub fn tscnt ( & self ) -> TscntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TscntR { bits } } # [ doc = "Bit 18 - no description available" ] # [ inline ( always ) ] pub fn tspffmae ( & self ) -> TspffmaeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TspffmaeR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tssti ( & self ) -> TsstiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsstiR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tsstu ( & self ) -> TsstuR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsstuR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn tsite ( & self ) -> TsiteR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsiteR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn ttsaru ( & self ) -> TtsaruR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TtsaruR { bits } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn tssarfe ( & self ) -> TssarfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssarfeR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tsssr ( & self ) -> TsssrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsssrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 8192 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn tse ( & mut self ) -> _TseW { _TseW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tsfcu ( & mut self ) -> _TsfcuW { _TsfcuW { w : self } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn tsptppsv2e ( & mut self ) -> _Tsptppsv2eW { _Tsptppsv2eW { w : self } } # [ doc = "Bit 11 - no description available" ] # [ inline ( always ) ] pub fn tssptpoefe ( & mut self ) -> _TssptpoefeW { _TssptpoefeW { w : self } } # [ doc = "Bit 12 - no description available" ] # [ inline ( always ) ] pub fn tssipv6fe ( & mut self ) -> _Tssipv6feW { _Tssipv6feW { w : self } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn tssipv4fe ( & mut self ) -> _Tssipv4feW { _Tssipv4feW { w : self } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn tsseme ( & mut self ) -> _TssemeW { _TssemeW { w : self } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn tssmrme ( & mut self ) -> _TssmrmeW { _TssmrmeW { w : self } } # [ doc = "Bits 16:17 - no description available" ] # [ inline ( always ) ] pub fn tscnt ( & mut self ) -> _TscntW { _TscntW { w : self } } # [ doc = "Bit 18 - no description available" ] # [ inline ( always ) ] pub fn tspffmae ( & mut self ) -> _TspffmaeW { _TspffmaeW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tssti ( & mut self ) -> _TsstiW { _TsstiW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tsstu ( & mut self ) -> _TsstuW { _TsstuW { w : self } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn tsite ( & mut self ) -> _TsiteW { _TsiteW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn ttsaru ( & mut self ) -> _TtsaruW { _TtsaruW { w : self } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn tssarfe ( & mut self ) -> _TssarfeW { _TssarfeW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn tsssr ( & mut self ) -> _TsssrW { _TsssrW { w : self } } } } # [ doc = "Ethernet PTP subsecond increment register" ] pub struct Ptpssir { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP subsecond increment register" ] pub mod ptpssir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptpssir { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StssiR { bits : u8 , } impl StssiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StssiW < 'a > { w : & 'a mut W , } impl < 'a > _StssiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - no description available" ] # [ inline ( always ) ] pub fn stssi ( & self ) -> StssiR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StssiR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - no description available" ] # [ inline ( always ) ] pub fn stssi ( & mut self ) -> _StssiW { _StssiW { w : self } } } } # [ doc = "Ethernet PTP time stamp high register" ] pub struct Ptptshr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp high register" ] pub mod ptptshr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ptptshr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct StsR { bits : u32 , } impl StsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn sts ( & self ) -> StsR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; StsR { bits } } } } # [ doc = "Ethernet PTP time stamp low register" ] pub struct Ptptslr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp low register" ] pub mod ptptslr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ptptslr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct StssR { bits : u32 , } impl StssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct StpnsR { bits : u8 , } impl StpnsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:30 - no description available" ] # [ inline ( always ) ] pub fn stss ( & self ) -> StssR { let bits = { const MASK : u32 = 2147483647 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; StssR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn stpns ( & self ) -> StpnsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StpnsR { bits } } } } # [ doc = "Ethernet PTP time stamp high update register" ] pub struct Ptptshur { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp high update register" ] pub mod ptptshur { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptptshur { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TsusR { bits : u32 , } impl TsusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _TsusW < 'a > { w : & 'a mut W , } impl < 'a > _TsusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tsus ( & self ) -> TsusR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TsusR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tsus ( & mut self ) -> _TsusW { _TsusW { w : self } } } } # [ doc = "Ethernet PTP time stamp low update register" ] pub struct Ptptslur { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp low update register" ] pub mod ptptslur { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptptslur { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TsussR { bits : u32 , } impl TsussR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsupnsR { bits : u8 , } impl TsupnsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TsussW < 'a > { w : & 'a mut W , } impl < 'a > _TsussW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 2147483647 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsupnsW < 'a > { w : & 'a mut W , } impl < 'a > _TsupnsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:30 - no description available" ] # [ inline ( always ) ] pub fn tsuss ( & self ) -> TsussR { let bits = { const MASK : u32 = 2147483647 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TsussR { bits } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn tsupns ( & self ) -> TsupnsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsupnsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:30 - no description available" ] # [ inline ( always ) ] pub fn tsuss ( & mut self ) -> _TsussW { _TsussW { w : self } } # [ doc = "Bit 31 - no description available" ] # [ inline ( always ) ] pub fn tsupns ( & mut self ) -> _TsupnsW { _TsupnsW { w : self } } } } # [ doc = "Ethernet PTP time stamp addend register" ] pub struct Ptptsar { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp addend register" ] pub mod ptptsar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptptsar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TsaR { bits : u32 , } impl TsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _TsaW < 'a > { w : & 'a mut W , } impl < 'a > _TsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tsa ( & self ) -> TsaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TsaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tsa ( & mut self ) -> _TsaW { _TsaW { w : self } } } } # [ doc = "Ethernet PTP target time high register" ] pub struct Ptptthr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP target time high register" ] pub mod ptptthr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptptthr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TtshR { bits : u32 , } impl TtshR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _TtshW < 'a > { w : & 'a mut W , } impl < 'a > _TtshW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - 0" ] # [ inline ( always ) ] pub fn ttsh ( & self ) -> TtshR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TtshR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - 0" ] # [ inline ( always ) ] pub fn ttsh ( & mut self ) -> _TtshW { _TtshW { w : self } } } } # [ doc = "Ethernet PTP target time low register" ] pub struct Ptpttlr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP target time low register" ] pub mod ptpttlr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ptpttlr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TtslR { bits : u32 , } impl TtslR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _TtslW < 'a > { w : & 'a mut W , } impl < 'a > _TtslW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn ttsl ( & self ) -> TtslR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TtslR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn ttsl ( & mut self ) -> _TtslW { _TtslW { w : self } } } } # [ doc = "Ethernet PTP time stamp status register" ] pub struct Ptptssr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP time stamp status register" ] pub mod ptptssr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ptptssr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TssoR { bits : u8 , } impl TssoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsttrR { bits : u8 , } impl TsttrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn tsso ( & self ) -> TssoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssoR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tsttr ( & self ) -> TsttrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsttrR { bits } } } } # [ doc = "Ethernet PTP PPS control register" ] pub struct Ptpppscr { register : VolatileCell < u32 > } # [ doc = "Ethernet PTP PPS control register" ] pub mod ptpppscr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ptpppscr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TssoR { bits : u8 , } impl TssoR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsttrR { bits : u8 , } impl TsttrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - TSSO" ] # [ inline ( always ) ] pub fn tsso ( & self ) -> TssoR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TssoR { bits } } # [ doc = "Bit 1 - TSTTR" ] # [ inline ( always ) ] pub fn tsttr ( & self ) -> TsttrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsttrR { bits } } } } } # [ doc = "Ethernet: Precision time protocol" ] pub struct EthernetPtp { register_block : ethernet_ptp :: RegisterBlock } impl Deref for EthernetPtp { type Target = ethernet_ptp :: RegisterBlock ; fn deref ( & self ) -> & ethernet_ptp :: RegisterBlock { & self . register_block } } # [ doc = "Ethernet: DMA controller operation" ] pub const ETHERNET_DMA : Peripheral < EthernetDma > = unsafe { Peripheral :: new ( 1073909760 ) } ; # [ doc = "Ethernet: DMA controller operation" ] pub mod ethernet_dma { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Ethernet DMA bus mode register" ] pub dmabmr : Dmabmr , # [ doc = "0x04 - Ethernet DMA transmit poll demand register" ] pub dmatpdr : Dmatpdr , # [ doc = "0x08 - EHERNET DMA receive poll demand register" ] pub dmarpdr : Dmarpdr , # [ doc = "0x0c - Ethernet DMA receive descriptor list address register" ] pub dmardlar : Dmardlar , # [ doc = "0x10 - Ethernet DMA transmit descriptor list address register" ] pub dmatdlar : Dmatdlar , # [ doc = "0x14 - Ethernet DMA status register" ] pub dmasr : Dmasr , # [ doc = "0x18 - Ethernet DMA operation mode register" ] pub dmaomr : Dmaomr , # [ doc = "0x1c - Ethernet DMA interrupt enable register" ] pub dmaier : Dmaier , # [ doc = "0x20 - Ethernet DMA missed frame and buffer overflow counter register" ] pub dmamfbocr : Dmamfbocr , # [ doc = "0x24 - Ethernet DMA receive status watchdog timer register" ] pub dmarswtr : Dmarswtr , _reserved0 : [ u8 ; 32usize ] , # [ doc = "0x48 - Ethernet DMA current host transmit descriptor register" ] pub dmachtdr : Dmachtdr , # [ doc = "0x4c - Ethernet DMA current host receive descriptor register" ] pub dmachrdr : Dmachrdr , # [ doc = "0x50 - Ethernet DMA current host transmit buffer address register" ] pub dmachtbar : Dmachtbar , # [ doc = "0x54 - Ethernet DMA current host receive buffer address register" ] pub dmachrbar : Dmachrbar , } # [ doc = "Ethernet DMA bus mode register" ] pub struct Dmabmr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA bus mode register" ] pub mod dmabmr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmabmr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SrR { bits : u8 , } impl SrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DaR { bits : u8 , } impl DaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DslR { bits : u8 , } impl DslR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EdfeR { bits : u8 , } impl EdfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PblR { bits : u8 , } impl PblR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtprR { bits : u8 , } impl RtprR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FbR { bits : u8 , } impl FbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RdpR { bits : u8 , } impl RdpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UspR { bits : u8 , } impl UspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FpmR { bits : u8 , } impl FpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AabR { bits : u8 , } impl AabR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MbR { bits : u8 , } impl MbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SrW < 'a > { w : & 'a mut W , } impl < 'a > _SrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DaW < 'a > { w : & 'a mut W , } impl < 'a > _DaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DslW < 'a > { w : & 'a mut W , } impl < 'a > _DslW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EdfeW < 'a > { w : & 'a mut W , } impl < 'a > _EdfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PblW < 'a > { w : & 'a mut W , } impl < 'a > _PblW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtprW < 'a > { w : & 'a mut W , } impl < 'a > _RtprW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FbW < 'a > { w : & 'a mut W , } impl < 'a > _FbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RdpW < 'a > { w : & 'a mut W , } impl < 'a > _RdpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UspW < 'a > { w : & 'a mut W , } impl < 'a > _UspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FpmW < 'a > { w : & 'a mut W , } impl < 'a > _FpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AabW < 'a > { w : & 'a mut W , } impl < 'a > _AabW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MbW < 'a > { w : & 'a mut W , } impl < 'a > _MbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn sr ( & self ) -> SrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn da ( & self ) -> DaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DaR { bits } } # [ doc = "Bits 2:6 - no description available" ] # [ inline ( always ) ] pub fn dsl ( & self ) -> DslR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DslR { bits } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn edfe ( & self ) -> EdfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EdfeR { bits } } # [ doc = "Bits 8:13 - no description available" ] # [ inline ( always ) ] pub fn pbl ( & self ) -> PblR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PblR { bits } } # [ doc = "Bits 14:15 - no description available" ] # [ inline ( always ) ] pub fn rtpr ( & self ) -> RtprR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtprR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn fb ( & self ) -> FbR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FbR { bits } } # [ doc = "Bits 17:22 - no description available" ] # [ inline ( always ) ] pub fn rdp ( & self ) -> RdpR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RdpR { bits } } # [ doc = "Bit 23 - no description available" ] # [ inline ( always ) ] pub fn usp ( & self ) -> UspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UspR { bits } } # [ doc = "Bit 24 - no description available" ] # [ inline ( always ) ] pub fn fpm ( & self ) -> FpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FpmR { bits } } # [ doc = "Bit 25 - no description available" ] # [ inline ( always ) ] pub fn aab ( & self ) -> AabR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AabR { bits } } # [ doc = "Bit 26 - no description available" ] # [ inline ( always ) ] pub fn mb ( & self ) -> MbR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MbR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 8449 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn sr ( & mut self ) -> _SrW { _SrW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn da ( & mut self ) -> _DaW { _DaW { w : self } } # [ doc = "Bits 2:6 - no description available" ] # [ inline ( always ) ] pub fn dsl ( & mut self ) -> _DslW { _DslW { w : self } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn edfe ( & mut self ) -> _EdfeW { _EdfeW { w : self } } # [ doc = "Bits 8:13 - no description available" ] # [ inline ( always ) ] pub fn pbl ( & mut self ) -> _PblW { _PblW { w : self } } # [ doc = "Bits 14:15 - no description available" ] # [ inline ( always ) ] pub fn rtpr ( & mut self ) -> _RtprW { _RtprW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn fb ( & mut self ) -> _FbW { _FbW { w : self } } # [ doc = "Bits 17:22 - no description available" ] # [ inline ( always ) ] pub fn rdp ( & mut self ) -> _RdpW { _RdpW { w : self } } # [ doc = "Bit 23 - no description available" ] # [ inline ( always ) ] pub fn usp ( & mut self ) -> _UspW { _UspW { w : self } } # [ doc = "Bit 24 - no description available" ] # [ inline ( always ) ] pub fn fpm ( & mut self ) -> _FpmW { _FpmW { w : self } } # [ doc = "Bit 25 - no description available" ] # [ inline ( always ) ] pub fn aab ( & mut self ) -> _AabW { _AabW { w : self } } # [ doc = "Bit 26 - no description available" ] # [ inline ( always ) ] pub fn mb ( & mut self ) -> _MbW { _MbW { w : self } } } } # [ doc = "Ethernet DMA transmit poll demand register" ] pub struct Dmatpdr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA transmit poll demand register" ] pub mod dmatpdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmatpdr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TpdR { bits : u32 , } impl TpdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _TpdW < 'a > { w : & 'a mut W , } impl < 'a > _TpdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tpd ( & self ) -> TpdR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; TpdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn tpd ( & mut self ) -> _TpdW { _TpdW { w : self } } } } # [ doc = "EHERNET DMA receive poll demand register" ] pub struct Dmarpdr { register : VolatileCell < u32 > } # [ doc = "EHERNET DMA receive poll demand register" ] pub mod dmarpdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmarpdr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RpdR { bits : u32 , } impl RpdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _RpdW < 'a > { w : & 'a mut W , } impl < 'a > _RpdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - RPD" ] # [ inline ( always ) ] pub fn rpd ( & self ) -> RpdR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; RpdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - RPD" ] # [ inline ( always ) ] pub fn rpd ( & mut self ) -> _RpdW { _RpdW { w : self } } } } # [ doc = "Ethernet DMA receive descriptor list address register" ] pub struct Dmardlar { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA receive descriptor list address register" ] pub mod dmardlar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmardlar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SrlR { bits : u32 , } impl SrlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SrlW < 'a > { w : & 'a mut W , } impl < 'a > _SrlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn srl ( & self ) -> SrlR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SrlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn srl ( & mut self ) -> _SrlW { _SrlW { w : self } } } } # [ doc = "Ethernet DMA transmit descriptor list address register" ] pub struct Dmatdlar { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA transmit descriptor list address register" ] pub mod dmatdlar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmatdlar { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StlR { bits : u32 , } impl StlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _StlW < 'a > { w : & 'a mut W , } impl < 'a > _StlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn stl ( & self ) -> StlR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; StlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn stl ( & mut self ) -> _StlW { _StlW { w : self } } } } # [ doc = "Ethernet DMA status register" ] pub struct Dmasr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA status register" ] pub mod dmasr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmasr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TsR { bits : u8 , } impl TsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TpssR { bits : u8 , } impl TpssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TbusR { bits : u8 , } impl TbusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TjtsR { bits : u8 , } impl TjtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RosR { bits : u8 , } impl RosR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TusR { bits : u8 , } impl TusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RsR { bits : u8 , } impl RsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RbusR { bits : u8 , } impl RbusR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RpssR { bits : u8 , } impl RpssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PwtsR { bits : u8 , } impl PwtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtsR { bits : u8 , } impl EtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FbesR { bits : u8 , } impl FbesR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErsR { bits : u8 , } impl ErsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AisR { bits : u8 , } impl AisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NisR { bits : u8 , } impl NisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RpsR { bits : u8 , } impl RpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TpsR { bits : u8 , } impl TpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EbsR { bits : u8 , } impl EbsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmcsR { bits : u8 , } impl MmcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PmtsR { bits : u8 , } impl PmtsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TstsR { bits : u8 , } impl TstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TsW < 'a > { w : & 'a mut W , } impl < 'a > _TsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TpssW < 'a > { w : & 'a mut W , } impl < 'a > _TpssW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TbusW < 'a > { w : & 'a mut W , } impl < 'a > _TbusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TjtsW < 'a > { w : & 'a mut W , } impl < 'a > _TjtsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RosW < 'a > { w : & 'a mut W , } impl < 'a > _RosW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TusW < 'a > { w : & 'a mut W , } impl < 'a > _TusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RsW < 'a > { w : & 'a mut W , } impl < 'a > _RsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RbusW < 'a > { w : & 'a mut W , } impl < 'a > _RbusW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RpssW < 'a > { w : & 'a mut W , } impl < 'a > _RpssW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PwtsW < 'a > { w : & 'a mut W , } impl < 'a > _PwtsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtsW < 'a > { w : & 'a mut W , } impl < 'a > _EtsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FbesW < 'a > { w : & 'a mut W , } impl < 'a > _FbesW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErsW < 'a > { w : & 'a mut W , } impl < 'a > _ErsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AisW < 'a > { w : & 'a mut W , } impl < 'a > _AisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NisW < 'a > { w : & 'a mut W , } impl < 'a > _NisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn ts ( & self ) -> TsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tpss ( & self ) -> TpssR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TpssR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tbus ( & self ) -> TbusR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TbusR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tjts ( & self ) -> TjtsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TjtsR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn ros ( & self ) -> RosR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RosR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn tus ( & self ) -> TusR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TusR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rs ( & self ) -> RsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RsR { bits } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn rbus ( & self ) -> RbusR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RbusR { bits } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn rpss ( & self ) -> RpssR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RpssR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn pwts ( & self ) -> PwtsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwtsR { bits } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn ets ( & self ) -> EtsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtsR { bits } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn fbes ( & self ) -> FbesR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FbesR { bits } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn ers ( & self ) -> ErsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErsR { bits } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn ais ( & self ) -> AisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AisR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn nis ( & self ) -> NisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NisR { bits } } # [ doc = "Bits 17:19 - no description available" ] # [ inline ( always ) ] pub fn rps ( & self ) -> RpsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RpsR { bits } } # [ doc = "Bits 20:22 - no description available" ] # [ inline ( always ) ] pub fn tps ( & self ) -> TpsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TpsR { bits } } # [ doc = "Bits 23:25 - no description available" ] # [ inline ( always ) ] pub fn ebs ( & self ) -> EbsR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EbsR { bits } } # [ doc = "Bit 27 - no description available" ] # [ inline ( always ) ] pub fn mmcs ( & self ) -> MmcsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmcsR { bits } } # [ doc = "Bit 28 - no description available" ] # [ inline ( always ) ] pub fn pmts ( & self ) -> PmtsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PmtsR { bits } } # [ doc = "Bit 29 - no description available" ] # [ inline ( always ) ] pub fn tsts ( & self ) -> TstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TstsR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn ts ( & mut self ) -> _TsW { _TsW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tpss ( & mut self ) -> _TpssW { _TpssW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tbus ( & mut self ) -> _TbusW { _TbusW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tjts ( & mut self ) -> _TjtsW { _TjtsW { w : self } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn ros ( & mut self ) -> _RosW { _RosW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn tus ( & mut self ) -> _TusW { _TusW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rs ( & mut self ) -> _RsW { _RsW { w : self } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn rbus ( & mut self ) -> _RbusW { _RbusW { w : self } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn rpss ( & mut self ) -> _RpssW { _RpssW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn pwts ( & mut self ) -> _PwtsW { _PwtsW { w : self } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn ets ( & mut self ) -> _EtsW { _EtsW { w : self } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn fbes ( & mut self ) -> _FbesW { _FbesW { w : self } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn ers ( & mut self ) -> _ErsW { _ErsW { w : self } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn ais ( & mut self ) -> _AisW { _AisW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn nis ( & mut self ) -> _NisW { _NisW { w : self } } } } # [ doc = "Ethernet DMA operation mode register" ] pub struct Dmaomr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA operation mode register" ] pub mod dmaomr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmaomr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SrR { bits : u8 , } impl SrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OsfR { bits : u8 , } impl OsfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtcR { bits : u8 , } impl RtcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FugfR { bits : u8 , } impl FugfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FefR { bits : u8 , } impl FefR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StR { bits : u8 , } impl StR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TtcR { bits : u8 , } impl TtcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FtfR { bits : u8 , } impl FtfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsfR { bits : u8 , } impl TsfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DfrfR { bits : u8 , } impl DfrfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RsfR { bits : u8 , } impl RsfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DtcefdR { bits : u8 , } impl DtcefdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SrW < 'a > { w : & 'a mut W , } impl < 'a > _SrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OsfW < 'a > { w : & 'a mut W , } impl < 'a > _OsfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtcW < 'a > { w : & 'a mut W , } impl < 'a > _RtcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FugfW < 'a > { w : & 'a mut W , } impl < 'a > _FugfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FefW < 'a > { w : & 'a mut W , } impl < 'a > _FefW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StW < 'a > { w : & 'a mut W , } impl < 'a > _StW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TtcW < 'a > { w : & 'a mut W , } impl < 'a > _TtcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FtfW < 'a > { w : & 'a mut W , } impl < 'a > _FtfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsfW < 'a > { w : & 'a mut W , } impl < 'a > _TsfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DfrfW < 'a > { w : & 'a mut W , } impl < 'a > _DfrfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RsfW < 'a > { w : & 'a mut W , } impl < 'a > _RsfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DtcefdW < 'a > { w : & 'a mut W , } impl < 'a > _DtcefdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - SR" ] # [ inline ( always ) ] pub fn sr ( & self ) -> SrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrR { bits } } # [ doc = "Bit 2 - OSF" ] # [ inline ( always ) ] pub fn osf ( & self ) -> OsfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OsfR { bits } } # [ doc = "Bits 3:4 - RTC" ] # [ inline ( always ) ] pub fn rtc ( & self ) -> RtcR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtcR { bits } } # [ doc = "Bit 6 - FUGF" ] # [ inline ( always ) ] pub fn fugf ( & self ) -> FugfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FugfR { bits } } # [ doc = "Bit 7 - FEF" ] # [ inline ( always ) ] pub fn fef ( & self ) -> FefR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FefR { bits } } # [ doc = "Bit 13 - ST" ] # [ inline ( always ) ] pub fn st ( & self ) -> StR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StR { bits } } # [ doc = "Bits 14:16 - TTC" ] # [ inline ( always ) ] pub fn ttc ( & self ) -> TtcR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TtcR { bits } } # [ doc = "Bit 20 - FTF" ] # [ inline ( always ) ] pub fn ftf ( & self ) -> FtfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FtfR { bits } } # [ doc = "Bit 21 - TSF" ] # [ inline ( always ) ] pub fn tsf ( & self ) -> TsfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsfR { bits } } # [ doc = "Bit 24 - DFRF" ] # [ inline ( always ) ] pub fn dfrf ( & self ) -> DfrfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DfrfR { bits } } # [ doc = "Bit 25 - RSF" ] # [ inline ( always ) ] pub fn rsf ( & self ) -> RsfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RsfR { bits } } # [ doc = "Bit 26 - DTCEFD" ] # [ inline ( always ) ] pub fn dtcefd ( & self ) -> DtcefdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DtcefdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - SR" ] # [ inline ( always ) ] pub fn sr ( & mut self ) -> _SrW { _SrW { w : self } } # [ doc = "Bit 2 - OSF" ] # [ inline ( always ) ] pub fn osf ( & mut self ) -> _OsfW { _OsfW { w : self } } # [ doc = "Bits 3:4 - RTC" ] # [ inline ( always ) ] pub fn rtc ( & mut self ) -> _RtcW { _RtcW { w : self } } # [ doc = "Bit 6 - FUGF" ] # [ inline ( always ) ] pub fn fugf ( & mut self ) -> _FugfW { _FugfW { w : self } } # [ doc = "Bit 7 - FEF" ] # [ inline ( always ) ] pub fn fef ( & mut self ) -> _FefW { _FefW { w : self } } # [ doc = "Bit 13 - ST" ] # [ inline ( always ) ] pub fn st ( & mut self ) -> _StW { _StW { w : self } } # [ doc = "Bits 14:16 - TTC" ] # [ inline ( always ) ] pub fn ttc ( & mut self ) -> _TtcW { _TtcW { w : self } } # [ doc = "Bit 20 - FTF" ] # [ inline ( always ) ] pub fn ftf ( & mut self ) -> _FtfW { _FtfW { w : self } } # [ doc = "Bit 21 - TSF" ] # [ inline ( always ) ] pub fn tsf ( & mut self ) -> _TsfW { _TsfW { w : self } } # [ doc = "Bit 24 - DFRF" ] # [ inline ( always ) ] pub fn dfrf ( & mut self ) -> _DfrfW { _DfrfW { w : self } } # [ doc = "Bit 25 - RSF" ] # [ inline ( always ) ] pub fn rsf ( & mut self ) -> _RsfW { _RsfW { w : self } } # [ doc = "Bit 26 - DTCEFD" ] # [ inline ( always ) ] pub fn dtcefd ( & mut self ) -> _DtcefdW { _DtcefdW { w : self } } } } # [ doc = "Ethernet DMA interrupt enable register" ] pub struct Dmaier { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA interrupt enable register" ] pub mod dmaier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmaier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TieR { bits : u8 , } impl TieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TpsieR { bits : u8 , } impl TpsieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TbuieR { bits : u8 , } impl TbuieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TjtieR { bits : u8 , } impl TjtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RoieR { bits : u8 , } impl RoieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TuieR { bits : u8 , } impl TuieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RieR { bits : u8 , } impl RieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RbuieR { bits : u8 , } impl RbuieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RpsieR { bits : u8 , } impl RpsieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RwtieR { bits : u8 , } impl RwtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EtieR { bits : u8 , } impl EtieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FbeieR { bits : u8 , } impl FbeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErieR { bits : u8 , } impl ErieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AiseR { bits : u8 , } impl AiseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NiseR { bits : u8 , } impl NiseR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TieW < 'a > { w : & 'a mut W , } impl < 'a > _TieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TpsieW < 'a > { w : & 'a mut W , } impl < 'a > _TpsieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TbuieW < 'a > { w : & 'a mut W , } impl < 'a > _TbuieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TjtieW < 'a > { w : & 'a mut W , } impl < 'a > _TjtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RoieW < 'a > { w : & 'a mut W , } impl < 'a > _RoieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TuieW < 'a > { w : & 'a mut W , } impl < 'a > _TuieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RieW < 'a > { w : & 'a mut W , } impl < 'a > _RieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RbuieW < 'a > { w : & 'a mut W , } impl < 'a > _RbuieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RpsieW < 'a > { w : & 'a mut W , } impl < 'a > _RpsieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RwtieW < 'a > { w : & 'a mut W , } impl < 'a > _RwtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EtieW < 'a > { w : & 'a mut W , } impl < 'a > _EtieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FbeieW < 'a > { w : & 'a mut W , } impl < 'a > _FbeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErieW < 'a > { w : & 'a mut W , } impl < 'a > _ErieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AiseW < 'a > { w : & 'a mut W , } impl < 'a > _AiseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NiseW < 'a > { w : & 'a mut W , } impl < 'a > _NiseW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn tie ( & self ) -> TieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TieR { bits } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tpsie ( & self ) -> TpsieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TpsieR { bits } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tbuie ( & self ) -> TbuieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TbuieR { bits } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tjtie ( & self ) -> TjtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TjtieR { bits } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn roie ( & self ) -> RoieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RoieR { bits } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn tuie ( & self ) -> TuieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TuieR { bits } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rie ( & self ) -> RieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RieR { bits } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn rbuie ( & self ) -> RbuieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RbuieR { bits } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn rpsie ( & self ) -> RpsieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RpsieR { bits } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn rwtie ( & self ) -> RwtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwtieR { bits } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn etie ( & self ) -> EtieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EtieR { bits } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn fbeie ( & self ) -> FbeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FbeieR { bits } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn erie ( & self ) -> ErieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErieR { bits } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn aise ( & self ) -> AiseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AiseR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn nise ( & self ) -> NiseR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NiseR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - no description available" ] # [ inline ( always ) ] pub fn tie ( & mut self ) -> _TieW { _TieW { w : self } } # [ doc = "Bit 1 - no description available" ] # [ inline ( always ) ] pub fn tpsie ( & mut self ) -> _TpsieW { _TpsieW { w : self } } # [ doc = "Bit 2 - no description available" ] # [ inline ( always ) ] pub fn tbuie ( & mut self ) -> _TbuieW { _TbuieW { w : self } } # [ doc = "Bit 3 - no description available" ] # [ inline ( always ) ] pub fn tjtie ( & mut self ) -> _TjtieW { _TjtieW { w : self } } # [ doc = "Bit 4 - no description available" ] # [ inline ( always ) ] pub fn roie ( & mut self ) -> _RoieW { _RoieW { w : self } } # [ doc = "Bit 5 - no description available" ] # [ inline ( always ) ] pub fn tuie ( & mut self ) -> _TuieW { _TuieW { w : self } } # [ doc = "Bit 6 - no description available" ] # [ inline ( always ) ] pub fn rie ( & mut self ) -> _RieW { _RieW { w : self } } # [ doc = "Bit 7 - no description available" ] # [ inline ( always ) ] pub fn rbuie ( & mut self ) -> _RbuieW { _RbuieW { w : self } } # [ doc = "Bit 8 - no description available" ] # [ inline ( always ) ] pub fn rpsie ( & mut self ) -> _RpsieW { _RpsieW { w : self } } # [ doc = "Bit 9 - no description available" ] # [ inline ( always ) ] pub fn rwtie ( & mut self ) -> _RwtieW { _RwtieW { w : self } } # [ doc = "Bit 10 - no description available" ] # [ inline ( always ) ] pub fn etie ( & mut self ) -> _EtieW { _EtieW { w : self } } # [ doc = "Bit 13 - no description available" ] # [ inline ( always ) ] pub fn fbeie ( & mut self ) -> _FbeieW { _FbeieW { w : self } } # [ doc = "Bit 14 - no description available" ] # [ inline ( always ) ] pub fn erie ( & mut self ) -> _ErieW { _ErieW { w : self } } # [ doc = "Bit 15 - no description available" ] # [ inline ( always ) ] pub fn aise ( & mut self ) -> _AiseW { _AiseW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn nise ( & mut self ) -> _NiseW { _NiseW { w : self } } } } # [ doc = "Ethernet DMA missed frame and buffer overflow counter register" ] pub struct Dmamfbocr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA missed frame and buffer overflow counter register" ] pub mod dmamfbocr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmamfbocr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MfcR { bits : u16 , } impl MfcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OmfcR { bits : u8 , } impl OmfcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MfaR { bits : u16 , } impl MfaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OfocR { bits : u8 , } impl OfocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MfcW < 'a > { w : & 'a mut W , } impl < 'a > _MfcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OmfcW < 'a > { w : & 'a mut W , } impl < 'a > _OmfcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MfaW < 'a > { w : & 'a mut W , } impl < 'a > _MfaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OfocW < 'a > { w : & 'a mut W , } impl < 'a > _OfocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn mfc ( & self ) -> MfcR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MfcR { bits } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn omfc ( & self ) -> OmfcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OmfcR { bits } } # [ doc = "Bits 17:27 - no description available" ] # [ inline ( always ) ] pub fn mfa ( & self ) -> MfaR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MfaR { bits } } # [ doc = "Bit 28 - no description available" ] # [ inline ( always ) ] pub fn ofoc ( & self ) -> OfocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OfocR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - no description available" ] # [ inline ( always ) ] pub fn mfc ( & mut self ) -> _MfcW { _MfcW { w : self } } # [ doc = "Bit 16 - no description available" ] # [ inline ( always ) ] pub fn omfc ( & mut self ) -> _OmfcW { _OmfcW { w : self } } # [ doc = "Bits 17:27 - no description available" ] # [ inline ( always ) ] pub fn mfa ( & mut self ) -> _MfaW { _MfaW { w : self } } # [ doc = "Bit 28 - no description available" ] # [ inline ( always ) ] pub fn ofoc ( & mut self ) -> _OfocW { _OfocW { w : self } } } } # [ doc = "Ethernet DMA receive status watchdog timer register" ] pub struct Dmarswtr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA receive status watchdog timer register" ] pub mod dmarswtr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dmarswtr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RswtcR { bits : u8 , } impl RswtcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RswtcW < 'a > { w : & 'a mut W , } impl < 'a > _RswtcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - RSWTC" ] # [ inline ( always ) ] pub fn rswtc ( & self ) -> RswtcR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RswtcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - RSWTC" ] # [ inline ( always ) ] pub fn rswtc ( & mut self ) -> _RswtcW { _RswtcW { w : self } } } } # [ doc = "Ethernet DMA current host transmit descriptor register" ] pub struct Dmachtdr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA current host transmit descriptor register" ] pub mod dmachtdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dmachtdr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HtdapR { bits : u32 , } impl HtdapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - HTDAP" ] # [ inline ( always ) ] pub fn htdap ( & self ) -> HtdapR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HtdapR { bits } } } } # [ doc = "Ethernet DMA current host receive descriptor register" ] pub struct Dmachrdr { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA current host receive descriptor register" ] pub mod dmachrdr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dmachrdr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HrdapR { bits : u32 , } impl HrdapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - HRDAP" ] # [ inline ( always ) ] pub fn hrdap ( & self ) -> HrdapR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HrdapR { bits } } } } # [ doc = "Ethernet DMA current host transmit buffer address register" ] pub struct Dmachtbar { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA current host transmit buffer address register" ] pub mod dmachtbar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dmachtbar { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HtbapR { bits : u32 , } impl HtbapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn htbap ( & self ) -> HtbapR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HtbapR { bits } } } } # [ doc = "Ethernet DMA current host receive buffer address register" ] pub struct Dmachrbar { register : VolatileCell < u32 > } # [ doc = "Ethernet DMA current host receive buffer address register" ] pub mod dmachrbar { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dmachrbar { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HrbapR { bits : u32 , } impl HrbapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - no description available" ] # [ inline ( always ) ] pub fn hrbap ( & self ) -> HrbapR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; HrbapR { bits } } } } } # [ doc = "Ethernet: DMA controller operation" ] pub struct EthernetDma { register_block : ethernet_dma :: RegisterBlock } impl Deref for EthernetDma { type Target = ethernet_dma :: RegisterBlock ; fn deref ( & self ) -> & ethernet_dma :: RegisterBlock { & self . register_block } } # [ doc = "Cryptographic processor" ] pub const CRC : Peripheral < Crc > = unsafe { Peripheral :: new ( 1073885184 ) } ; # [ doc = "Cryptographic processor" ] pub mod crc { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Data register" ] pub dr : Dr , # [ doc = "0x04 - Independent Data register" ] pub idr : Idr , # [ doc = "0x08 - Control register" ] pub cr : Cr , } # [ doc = "Data register" ] pub struct Dr { register : VolatileCell < u32 > } # [ doc = "Data register" ] pub mod dr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DrR { bits : u32 , } impl DrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DrW < 'a > { w : & 'a mut W , } impl < 'a > _DrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Data Register" ] # [ inline ( always ) ] pub fn dr ( & self ) -> DrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4294967295 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Data Register" ] # [ inline ( always ) ] pub fn dr ( & mut self ) -> _DrW { _DrW { w : self } } } } # [ doc = "Independent Data register" ] pub struct Idr { register : VolatileCell < u32 > } # [ doc = "Independent Data register" ] pub mod idr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Idr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IdrR { bits : u8 , } impl IdrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IdrW < 'a > { w : & 'a mut W , } impl < 'a > _IdrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - Independent Data register" ] # [ inline ( always ) ] pub fn idr ( & self ) -> IdrR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - Independent Data register" ] # [ inline ( always ) ] pub fn idr ( & mut self ) -> _IdrW { _IdrW { w : self } } } } # [ doc = "Control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "Control register" ] pub mod cr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _CrW < 'a > { w : & 'a mut W , } impl < 'a > _CrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Control regidter" ] # [ inline ( always ) ] pub fn cr ( & mut self ) -> _CrW { _CrW { w : self } } } } } # [ doc = "Cryptographic processor" ] pub struct Crc { register_block : crc :: RegisterBlock } impl Deref for Crc { type Target = crc :: RegisterBlock ; fn deref ( & self ) -> & crc :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go full speed" ] pub const OTG_FS_GLOBAL : Peripheral < OtgFsGlobal > = unsafe { Peripheral :: new ( 1342177280 ) } ; # [ doc = "USB on the go full speed" ] pub mod otg_fs_global { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_FS control and status register (OTG_FS_GOTGCTL)" ] pub fs_gotgctl : FsGotgctl , # [ doc = "0x04 - OTG_FS interrupt register (OTG_FS_GOTGINT)" ] pub fs_gotgint : FsGotgint , # [ doc = "0x08 - OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ] pub fs_gahbcfg : FsGahbcfg , # [ doc = "0x0c - OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ] pub fs_gusbcfg : FsGusbcfg , # [ doc = "0x10 - OTG_FS reset register (OTG_FS_GRSTCTL)" ] pub fs_grstctl : FsGrstctl , # [ doc = "0x14 - OTG_FS core interrupt register (OTG_FS_GINTSTS)" ] pub fs_gintsts : FsGintsts , # [ doc = "0x18 - OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ] pub fs_gintmsk : FsGintmsk , # [ doc = "0x1c - OTG_FS Receive status debug read(Device mode)" ] pub fs_grxstsr_device : FsGrxstsrDevice , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x24 - OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ] pub fs_grxfsiz : FsGrxfsiz , # [ doc = "0x28 - OTG_FS non-periodic transmit FIFO size register (Device mode)" ] pub fs_gnptxfsiz_device : FsGnptxfsizDevice , # [ doc = "0x2c - OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ] pub fs_gnptxsts : FsGnptxsts , _reserved1 : [ u8 ; 8usize ] , # [ doc = "0x38 - OTG_FS general core configuration register (OTG_FS_GCCFG)" ] pub fs_gccfg : FsGccfg , # [ doc = "0x3c - core ID register" ] pub fs_cid : FsCid , _reserved2 : [ u8 ; 192usize ] , # [ doc = "0x100 - OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ] pub fs_hptxfsiz : FsHptxfsiz , # [ doc = "0x104 - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ] pub fs_dieptxf1 : FsDieptxf1 , # [ doc = "0x108 - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ] pub fs_dieptxf2 : FsDieptxf2 , # [ doc = "0x10c - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ] pub fs_dieptxf3 : FsDieptxf3 , } # [ doc = "OTG_FS control and status register (OTG_FS_GOTGCTL)" ] pub struct FsGotgctl { register : VolatileCell < u32 > } # [ doc = "OTG_FS control and status register (OTG_FS_GOTGCTL)" ] pub mod fs_gotgctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGotgctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SrqscsR { bits : u8 , } impl SrqscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqR { bits : u8 , } impl SrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HngscsR { bits : u8 , } impl HngscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnprqR { bits : u8 , } impl HnprqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HshnpenR { bits : u8 , } impl HshnpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DhnpenR { bits : u8 , } impl DhnpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidstsR { bits : u8 , } impl CidstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbctR { bits : u8 , } impl DbctR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsvldR { bits : u8 , } impl AsvldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BsvldR { bits : u8 , } impl BsvldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SrqW < 'a > { w : & 'a mut W , } impl < 'a > _SrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnprqW < 'a > { w : & 'a mut W , } impl < 'a > _HnprqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HshnpenW < 'a > { w : & 'a mut W , } impl < 'a > _HshnpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DhnpenW < 'a > { w : & 'a mut W , } impl < 'a > _DhnpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Session request success" ] # [ inline ( always ) ] pub fn srqscs ( & self ) -> SrqscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqscsR { bits } } # [ doc = "Bit 1 - Session request" ] # [ inline ( always ) ] pub fn srq ( & self ) -> SrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqR { bits } } # [ doc = "Bit 8 - Host negotiation success" ] # [ inline ( always ) ] pub fn hngscs ( & self ) -> HngscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HngscsR { bits } } # [ doc = "Bit 9 - HNP request" ] # [ inline ( always ) ] pub fn hnprq ( & self ) -> HnprqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnprqR { bits } } # [ doc = "Bit 10 - Host set HNP enable" ] # [ inline ( always ) ] pub fn hshnpen ( & self ) -> HshnpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HshnpenR { bits } } # [ doc = "Bit 11 - Device HNP enabled" ] # [ inline ( always ) ] pub fn dhnpen ( & self ) -> DhnpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DhnpenR { bits } } # [ doc = "Bit 16 - Connector ID status" ] # [ inline ( always ) ] pub fn cidsts ( & self ) -> CidstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidstsR { bits } } # [ doc = "Bit 17 - Long/short debounce time" ] # [ inline ( always ) ] pub fn dbct ( & self ) -> DbctR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbctR { bits } } # [ doc = "Bit 18 - A-session valid" ] # [ inline ( always ) ] pub fn asvld ( & self ) -> AsvldR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsvldR { bits } } # [ doc = "Bit 19 - B-session valid" ] # [ inline ( always ) ] pub fn bsvld ( & self ) -> BsvldR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BsvldR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2048 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Session request" ] # [ inline ( always ) ] pub fn srq ( & mut self ) -> _SrqW { _SrqW { w : self } } # [ doc = "Bit 9 - HNP request" ] # [ inline ( always ) ] pub fn hnprq ( & mut self ) -> _HnprqW { _HnprqW { w : self } } # [ doc = "Bit 10 - Host set HNP enable" ] # [ inline ( always ) ] pub fn hshnpen ( & mut self ) -> _HshnpenW { _HshnpenW { w : self } } # [ doc = "Bit 11 - Device HNP enabled" ] # [ inline ( always ) ] pub fn dhnpen ( & mut self ) -> _DhnpenW { _DhnpenW { w : self } } } } # [ doc = "OTG_FS interrupt register (OTG_FS_GOTGINT)" ] pub struct FsGotgint { register : VolatileCell < u32 > } # [ doc = "OTG_FS interrupt register (OTG_FS_GOTGINT)" ] pub mod fs_gotgint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGotgint { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SedetR { bits : u8 , } impl SedetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrsschgR { bits : u8 , } impl SrsschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnsschgR { bits : u8 , } impl HnsschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HngdetR { bits : u8 , } impl HngdetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AdtochgR { bits : u8 , } impl AdtochgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbcdneR { bits : u8 , } impl DbcdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SedetW < 'a > { w : & 'a mut W , } impl < 'a > _SedetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrsschgW < 'a > { w : & 'a mut W , } impl < 'a > _SrsschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnsschgW < 'a > { w : & 'a mut W , } impl < 'a > _HnsschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HngdetW < 'a > { w : & 'a mut W , } impl < 'a > _HngdetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AdtochgW < 'a > { w : & 'a mut W , } impl < 'a > _AdtochgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbcdneW < 'a > { w : & 'a mut W , } impl < 'a > _DbcdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 2 - Session end detected" ] # [ inline ( always ) ] pub fn sedet ( & self ) -> SedetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SedetR { bits } } # [ doc = "Bit 8 - Session request success status change" ] # [ inline ( always ) ] pub fn srsschg ( & self ) -> SrsschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrsschgR { bits } } # [ doc = "Bit 9 - Host negotiation success status change" ] # [ inline ( always ) ] pub fn hnsschg ( & self ) -> HnsschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnsschgR { bits } } # [ doc = "Bit 17 - Host negotiation detected" ] # [ inline ( always ) ] pub fn hngdet ( & self ) -> HngdetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HngdetR { bits } } # [ doc = "Bit 18 - A-device timeout change" ] # [ inline ( always ) ] pub fn adtochg ( & self ) -> AdtochgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AdtochgR { bits } } # [ doc = "Bit 19 - Debounce done" ] # [ inline ( always ) ] pub fn dbcdne ( & self ) -> DbcdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbcdneR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 2 - Session end detected" ] # [ inline ( always ) ] pub fn sedet ( & mut self ) -> _SedetW { _SedetW { w : self } } # [ doc = "Bit 8 - Session request success status change" ] # [ inline ( always ) ] pub fn srsschg ( & mut self ) -> _SrsschgW { _SrsschgW { w : self } } # [ doc = "Bit 9 - Host negotiation success status change" ] # [ inline ( always ) ] pub fn hnsschg ( & mut self ) -> _HnsschgW { _HnsschgW { w : self } } # [ doc = "Bit 17 - Host negotiation detected" ] # [ inline ( always ) ] pub fn hngdet ( & mut self ) -> _HngdetW { _HngdetW { w : self } } # [ doc = "Bit 18 - A-device timeout change" ] # [ inline ( always ) ] pub fn adtochg ( & mut self ) -> _AdtochgW { _AdtochgW { w : self } } # [ doc = "Bit 19 - Debounce done" ] # [ inline ( always ) ] pub fn dbcdne ( & mut self ) -> _DbcdneW { _DbcdneW { w : self } } } } # [ doc = "OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ] pub struct FsGahbcfg { register : VolatileCell < u32 > } # [ doc = "OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ] pub mod fs_gahbcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGahbcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct GintR { bits : u8 , } impl GintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfelvlR { bits : u8 , } impl TxfelvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfelvlR { bits : u8 , } impl PtxfelvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _GintW < 'a > { w : & 'a mut W , } impl < 'a > _GintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfelvlW < 'a > { w : & 'a mut W , } impl < 'a > _TxfelvlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfelvlW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfelvlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Global interrupt mask" ] # [ inline ( always ) ] pub fn gint ( & self ) -> GintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GintR { bits } } # [ doc = "Bit 7 - TxFIFO empty level" ] # [ inline ( always ) ] pub fn txfelvl ( & self ) -> TxfelvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfelvlR { bits } } # [ doc = "Bit 8 - Periodic TxFIFO empty level" ] # [ inline ( always ) ] pub fn ptxfelvl ( & self ) -> PtxfelvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfelvlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Global interrupt mask" ] # [ inline ( always ) ] pub fn gint ( & mut self ) -> _GintW { _GintW { w : self } } # [ doc = "Bit 7 - TxFIFO empty level" ] # [ inline ( always ) ] pub fn txfelvl ( & mut self ) -> _TxfelvlW { _TxfelvlW { w : self } } # [ doc = "Bit 8 - Periodic TxFIFO empty level" ] # [ inline ( always ) ] pub fn ptxfelvl ( & mut self ) -> _PtxfelvlW { _PtxfelvlW { w : self } } } } # [ doc = "OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ] pub struct FsGusbcfg { register : VolatileCell < u32 > } # [ doc = "OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ] pub mod fs_gusbcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGusbcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TocalR { bits : u8 , } impl TocalR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrpcapR { bits : u8 , } impl SrpcapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnpcapR { bits : u8 , } impl HnpcapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TrdtR { bits : u8 , } impl TrdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FhmodR { bits : u8 , } impl FhmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FdmodR { bits : u8 , } impl FdmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtxpktR { bits : u8 , } impl CtxpktR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TocalW < 'a > { w : & 'a mut W , } impl < 'a > _TocalW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PhyselW < 'a > { w : & 'a mut W , } impl < 'a > _PhyselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrpcapW < 'a > { w : & 'a mut W , } impl < 'a > _SrpcapW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnpcapW < 'a > { w : & 'a mut W , } impl < 'a > _HnpcapW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TrdtW < 'a > { w : & 'a mut W , } impl < 'a > _TrdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FhmodW < 'a > { w : & 'a mut W , } impl < 'a > _FhmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FdmodW < 'a > { w : & 'a mut W , } impl < 'a > _FdmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtxpktW < 'a > { w : & 'a mut W , } impl < 'a > _CtxpktW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:2 - FS timeout calibration" ] # [ inline ( always ) ] pub fn tocal ( & self ) -> TocalR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocalR { bits } } # [ doc = "Bit 8 - SRP-capable" ] # [ inline ( always ) ] pub fn srpcap ( & self ) -> SrpcapR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrpcapR { bits } } # [ doc = "Bit 9 - HNP-capable" ] # [ inline ( always ) ] pub fn hnpcap ( & self ) -> HnpcapR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnpcapR { bits } } # [ doc = "Bits 10:13 - USB turnaround time" ] # [ inline ( always ) ] pub fn trdt ( & self ) -> TrdtR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TrdtR { bits } } # [ doc = "Bit 29 - Force host mode" ] # [ inline ( always ) ] pub fn fhmod ( & self ) -> FhmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FhmodR { bits } } # [ doc = "Bit 30 - Force device mode" ] # [ inline ( always ) ] pub fn fdmod ( & self ) -> FdmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FdmodR { bits } } # [ doc = "Bit 31 - Corrupt Tx packet" ] # [ inline ( always ) ] pub fn ctxpkt ( & self ) -> CtxpktR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtxpktR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2560 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:2 - FS timeout calibration" ] # [ inline ( always ) ] pub fn tocal ( & mut self ) -> _TocalW { _TocalW { w : self } } # [ doc = "Bit 6 - Full Speed serial transceiver select" ] # [ inline ( always ) ] pub fn physel ( & mut self ) -> _PhyselW { _PhyselW { w : self } } # [ doc = "Bit 8 - SRP-capable" ] # [ inline ( always ) ] pub fn srpcap ( & mut self ) -> _SrpcapW { _SrpcapW { w : self } } # [ doc = "Bit 9 - HNP-capable" ] # [ inline ( always ) ] pub fn hnpcap ( & mut self ) -> _HnpcapW { _HnpcapW { w : self } } # [ doc = "Bits 10:13 - USB turnaround time" ] # [ inline ( always ) ] pub fn trdt ( & mut self ) -> _TrdtW { _TrdtW { w : self } } # [ doc = "Bit 29 - Force host mode" ] # [ inline ( always ) ] pub fn fhmod ( & mut self ) -> _FhmodW { _FhmodW { w : self } } # [ doc = "Bit 30 - Force device mode" ] # [ inline ( always ) ] pub fn fdmod ( & mut self ) -> _FdmodW { _FdmodW { w : self } } # [ doc = "Bit 31 - Corrupt Tx packet" ] # [ inline ( always ) ] pub fn ctxpkt ( & mut self ) -> _CtxpktW { _CtxpktW { w : self } } } } # [ doc = "OTG_FS reset register (OTG_FS_GRSTCTL)" ] pub struct FsGrstctl { register : VolatileCell < u32 > } # [ doc = "OTG_FS reset register (OTG_FS_GRSTCTL)" ] pub mod fs_grstctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGrstctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CsrstR { bits : u8 , } impl CsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsrstR { bits : u8 , } impl HsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FcrstR { bits : u8 , } impl FcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfflshR { bits : u8 , } impl RxfflshR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfflshR { bits : u8 , } impl TxfflshR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhbidlR { bits : u8 , } impl AhbidlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CsrstW < 'a > { w : & 'a mut W , } impl < 'a > _CsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsrstW < 'a > { w : & 'a mut W , } impl < 'a > _HsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FcrstW < 'a > { w : & 'a mut W , } impl < 'a > _FcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxfflshW < 'a > { w : & 'a mut W , } impl < 'a > _RxfflshW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfflshW < 'a > { w : & 'a mut W , } impl < 'a > _TxfflshW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Core soft reset" ] # [ inline ( always ) ] pub fn csrst ( & self ) -> CsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsrstR { bits } } # [ doc = "Bit 1 - HCLK soft reset" ] # [ inline ( always ) ] pub fn hsrst ( & self ) -> HsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsrstR { bits } } # [ doc = "Bit 2 - Host frame counter reset" ] # [ inline ( always ) ] pub fn fcrst ( & self ) -> FcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FcrstR { bits } } # [ doc = "Bit 4 - RxFIFO flush" ] # [ inline ( always ) ] pub fn rxfflsh ( & self ) -> RxfflshR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfflshR { bits } } # [ doc = "Bit 5 - TxFIFO flush" ] # [ inline ( always ) ] pub fn txfflsh ( & self ) -> TxfflshR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfflshR { bits } } # [ doc = "Bits 6:10 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 31 - AHB master idle" ] # [ inline ( always ) ] pub fn ahbidl ( & self ) -> AhbidlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhbidlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 536870912 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Core soft reset" ] # [ inline ( always ) ] pub fn csrst ( & mut self ) -> _CsrstW { _CsrstW { w : self } } # [ doc = "Bit 1 - HCLK soft reset" ] # [ inline ( always ) ] pub fn hsrst ( & mut self ) -> _HsrstW { _HsrstW { w : self } } # [ doc = "Bit 2 - Host frame counter reset" ] # [ inline ( always ) ] pub fn fcrst ( & mut self ) -> _FcrstW { _FcrstW { w : self } } # [ doc = "Bit 4 - RxFIFO flush" ] # [ inline ( always ) ] pub fn rxfflsh ( & mut self ) -> _RxfflshW { _RxfflshW { w : self } } # [ doc = "Bit 5 - TxFIFO flush" ] # [ inline ( always ) ] pub fn txfflsh ( & mut self ) -> _TxfflshW { _TxfflshW { w : self } } # [ doc = "Bits 6:10 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } } } # [ doc = "OTG_FS core interrupt register (OTG_FS_GINTSTS)" ] pub struct FsGintsts { register : VolatileCell < u32 > } # [ doc = "OTG_FS core interrupt register (OTG_FS_GINTSTS)" ] pub mod fs_gintsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGintsts { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CmodR { bits : u8 , } impl CmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmisR { bits : u8 , } impl MmisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtgintR { bits : u8 , } impl OtgintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofR { bits : u8 , } impl SofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxflvlR { bits : u8 , } impl RxflvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfeR { bits : u8 , } impl NptxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinakeffR { bits : u8 , } impl GinakeffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GoutnakeffR { bits : u8 , } impl GoutnakeffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EsuspR { bits : u8 , } impl EsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbsuspR { bits : u8 , } impl UsbsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbrstR { bits : u8 , } impl UsbrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumdneR { bits : u8 , } impl EnumdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IsoodrpR { bits : u8 , } impl IsoodrpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EopfR { bits : u8 , } impl EopfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u8 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u8 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IisoixfrR { bits : u8 , } impl IisoixfrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IpxfrIncompisooutR { bits : u8 , } impl IpxfrIncompisooutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HprtintR { bits : u8 , } impl HprtintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HcintR { bits : u8 , } impl HcintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfeR { bits : u8 , } impl PtxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidschgR { bits : u8 , } impl CidschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscintR { bits : u8 , } impl DiscintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqintR { bits : u8 , } impl SrqintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WkupintR { bits : u8 , } impl WkupintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmisW < 'a > { w : & 'a mut W , } impl < 'a > _MmisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofW < 'a > { w : & 'a mut W , } impl < 'a > _SofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EsuspW < 'a > { w : & 'a mut W , } impl < 'a > _EsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbsuspW < 'a > { w : & 'a mut W , } impl < 'a > _UsbsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbrstW < 'a > { w : & 'a mut W , } impl < 'a > _UsbrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnumdneW < 'a > { w : & 'a mut W , } impl < 'a > _EnumdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IsoodrpW < 'a > { w : & 'a mut W , } impl < 'a > _IsoodrpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EopfW < 'a > { w : & 'a mut W , } impl < 'a > _EopfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IisoixfrW < 'a > { w : & 'a mut W , } impl < 'a > _IisoixfrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IpxfrIncompisooutW < 'a > { w : & 'a mut W , } impl < 'a > _IpxfrIncompisooutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CidschgW < 'a > { w : & 'a mut W , } impl < 'a > _CidschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscintW < 'a > { w : & 'a mut W , } impl < 'a > _DiscintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrqintW < 'a > { w : & 'a mut W , } impl < 'a > _SrqintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WkupintW < 'a > { w : & 'a mut W , } impl < 'a > _WkupintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Current mode of operation" ] # [ inline ( always ) ] pub fn cmod ( & self ) -> CmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmodR { bits } } # [ doc = "Bit 1 - Mode mismatch interrupt" ] # [ inline ( always ) ] pub fn mmis ( & self ) -> MmisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmisR { bits } } # [ doc = "Bit 2 - OTG interrupt" ] # [ inline ( always ) ] pub fn otgint ( & self ) -> OtgintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgintR { bits } } # [ doc = "Bit 3 - Start of frame" ] # [ inline ( always ) ] pub fn sof ( & self ) -> SofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofR { bits } } # [ doc = "Bit 4 - RxFIFO non-empty" ] # [ inline ( always ) ] pub fn rxflvl ( & self ) -> RxflvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxflvlR { bits } } # [ doc = "Bit 5 - Non-periodic TxFIFO empty" ] # [ inline ( always ) ] pub fn nptxfe ( & self ) -> NptxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxfeR { bits } } # [ doc = "Bit 6 - Global IN non-periodic NAK effective" ] # [ inline ( always ) ] pub fn ginakeff ( & self ) -> GinakeffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinakeffR { bits } } # [ doc = "Bit 7 - Global OUT NAK effective" ] # [ inline ( always ) ] pub fn goutnakeff ( & self ) -> GoutnakeffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GoutnakeffR { bits } } # [ doc = "Bit 10 - Early suspend" ] # [ inline ( always ) ] pub fn esusp ( & self ) -> EsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EsuspR { bits } } # [ doc = "Bit 11 - USB suspend" ] # [ inline ( always ) ] pub fn usbsusp ( & self ) -> UsbsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbsuspR { bits } } # [ doc = "Bit 12 - USB reset" ] # [ inline ( always ) ] pub fn usbrst ( & self ) -> UsbrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbrstR { bits } } # [ doc = "Bit 13 - Enumeration done" ] # [ inline ( always ) ] pub fn enumdne ( & self ) -> EnumdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumdneR { bits } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ] # [ inline ( always ) ] pub fn isoodrp ( & self ) -> IsoodrpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IsoodrpR { bits } } # [ doc = "Bit 15 - End of periodic frame interrupt" ] # [ inline ( always ) ] pub fn eopf ( & self ) -> EopfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopfR { bits } } # [ doc = "Bit 18 - IN endpoint interrupt" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IepintR { bits } } # [ doc = "Bit 19 - OUT endpoint interrupt" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OepintR { bits } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ] # [ inline ( always ) ] pub fn iisoixfr ( & self ) -> IisoixfrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IisoixfrR { bits } } # [ doc = "Bit 21 - Incomplete periodic transfer(Host mode)/Incomplete isochronous OUT transfer(Device mode)" ] # [ inline ( always ) ] pub fn ipxfr_incompisoout ( & self ) -> IpxfrIncompisooutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IpxfrIncompisooutR { bits } } # [ doc = "Bit 24 - Host port interrupt" ] # [ inline ( always ) ] pub fn hprtint ( & self ) -> HprtintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HprtintR { bits } } # [ doc = "Bit 25 - Host channels interrupt" ] # [ inline ( always ) ] pub fn hcint ( & self ) -> HcintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HcintR { bits } } # [ doc = "Bit 26 - Periodic TxFIFO empty" ] # [ inline ( always ) ] pub fn ptxfe ( & self ) -> PtxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfeR { bits } } # [ doc = "Bit 28 - Connector ID status change" ] # [ inline ( always ) ] pub fn cidschg ( & self ) -> CidschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidschgR { bits } } # [ doc = "Bit 29 - Disconnect detected interrupt" ] # [ inline ( always ) ] pub fn discint ( & self ) -> DiscintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscintR { bits } } # [ doc = "Bit 30 - Session request/new session detected interrupt" ] # [ inline ( always ) ] pub fn srqint ( & self ) -> SrqintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqintR { bits } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ] # [ inline ( always ) ] pub fn wkupint ( & self ) -> WkupintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WkupintR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 67108896 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Mode mismatch interrupt" ] # [ inline ( always ) ] pub fn mmis ( & mut self ) -> _MmisW { _MmisW { w : self } } # [ doc = "Bit 3 - Start of frame" ] # [ inline ( always ) ] pub fn sof ( & mut self ) -> _SofW { _SofW { w : self } } # [ doc = "Bit 10 - Early suspend" ] # [ inline ( always ) ] pub fn esusp ( & mut self ) -> _EsuspW { _EsuspW { w : self } } # [ doc = "Bit 11 - USB suspend" ] # [ inline ( always ) ] pub fn usbsusp ( & mut self ) -> _UsbsuspW { _UsbsuspW { w : self } } # [ doc = "Bit 12 - USB reset" ] # [ inline ( always ) ] pub fn usbrst ( & mut self ) -> _UsbrstW { _UsbrstW { w : self } } # [ doc = "Bit 13 - Enumeration done" ] # [ inline ( always ) ] pub fn enumdne ( & mut self ) -> _EnumdneW { _EnumdneW { w : self } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ] # [ inline ( always ) ] pub fn isoodrp ( & mut self ) -> _IsoodrpW { _IsoodrpW { w : self } } # [ doc = "Bit 15 - End of periodic frame interrupt" ] # [ inline ( always ) ] pub fn eopf ( & mut self ) -> _EopfW { _EopfW { w : self } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ] # [ inline ( always ) ] pub fn iisoixfr ( & mut self ) -> _IisoixfrW { _IisoixfrW { w : self } } # [ doc = "Bit 21 - Incomplete periodic transfer(Host mode)/Incomplete isochronous OUT transfer(Device mode)" ] # [ inline ( always ) ] pub fn ipxfr_incompisoout ( & mut self ) -> _IpxfrIncompisooutW { _IpxfrIncompisooutW { w : self } } # [ doc = "Bit 28 - Connector ID status change" ] # [ inline ( always ) ] pub fn cidschg ( & mut self ) -> _CidschgW { _CidschgW { w : self } } # [ doc = "Bit 29 - Disconnect detected interrupt" ] # [ inline ( always ) ] pub fn discint ( & mut self ) -> _DiscintW { _DiscintW { w : self } } # [ doc = "Bit 30 - Session request/new session detected interrupt" ] # [ inline ( always ) ] pub fn srqint ( & mut self ) -> _SrqintW { _SrqintW { w : self } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ] # [ inline ( always ) ] pub fn wkupint ( & mut self ) -> _WkupintW { _WkupintW { w : self } } } } # [ doc = "OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ] pub struct FsGintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ] pub mod fs_gintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MmismR { bits : u8 , } impl MmismR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtgintR { bits : u8 , } impl OtgintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofmR { bits : u8 , } impl SofmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxflvlmR { bits : u8 , } impl RxflvlmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfemR { bits : u8 , } impl NptxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinakeffmR { bits : u8 , } impl GinakeffmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GonakeffmR { bits : u8 , } impl GonakeffmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EsuspmR { bits : u8 , } impl EsuspmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbsuspmR { bits : u8 , } impl UsbsuspmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbrstR { bits : u8 , } impl UsbrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumdnemR { bits : u8 , } impl EnumdnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IsoodrpmR { bits : u8 , } impl IsoodrpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EopfmR { bits : u8 , } impl EopfmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpmismR { bits : u8 , } impl EpmismR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u8 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u8 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IisoixfrmR { bits : u8 , } impl IisoixfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IpxfrmIisooxfrmR { bits : u8 , } impl IpxfrmIisooxfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PrtimR { bits : u8 , } impl PrtimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HcimR { bits : u8 , } impl HcimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfemR { bits : u8 , } impl PtxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidschgmR { bits : u8 , } impl CidschgmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscintR { bits : u8 , } impl DiscintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqimR { bits : u8 , } impl SrqimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WuimR { bits : u8 , } impl WuimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmismW < 'a > { w : & 'a mut W , } impl < 'a > _MmismW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtgintW < 'a > { w : & 'a mut W , } impl < 'a > _OtgintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofmW < 'a > { w : & 'a mut W , } impl < 'a > _SofmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxflvlmW < 'a > { w : & 'a mut W , } impl < 'a > _RxflvlmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NptxfemW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GinakeffmW < 'a > { w : & 'a mut W , } impl < 'a > _GinakeffmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GonakeffmW < 'a > { w : & 'a mut W , } impl < 'a > _GonakeffmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EsuspmW < 'a > { w : & 'a mut W , } impl < 'a > _EsuspmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbsuspmW < 'a > { w : & 'a mut W , } impl < 'a > _UsbsuspmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbrstW < 'a > { w : & 'a mut W , } impl < 'a > _UsbrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnumdnemW < 'a > { w : & 'a mut W , } impl < 'a > _EnumdnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IsoodrpmW < 'a > { w : & 'a mut W , } impl < 'a > _IsoodrpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EopfmW < 'a > { w : & 'a mut W , } impl < 'a > _EopfmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpmismW < 'a > { w : & 'a mut W , } impl < 'a > _EpmismW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IepintW < 'a > { w : & 'a mut W , } impl < 'a > _IepintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OepintW < 'a > { w : & 'a mut W , } impl < 'a > _OepintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IisoixfrmW < 'a > { w : & 'a mut W , } impl < 'a > _IisoixfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IpxfrmIisooxfrmW < 'a > { w : & 'a mut W , } impl < 'a > _IpxfrmIisooxfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HcimW < 'a > { w : & 'a mut W , } impl < 'a > _HcimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfemW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CidschgmW < 'a > { w : & 'a mut W , } impl < 'a > _CidschgmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscintW < 'a > { w : & 'a mut W , } impl < 'a > _DiscintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrqimW < 'a > { w : & 'a mut W , } impl < 'a > _SrqimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WuimW < 'a > { w : & 'a mut W , } impl < 'a > _WuimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - Mode mismatch interrupt mask" ] # [ inline ( always ) ] pub fn mmism ( & self ) -> MmismR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmismR { bits } } # [ doc = "Bit 2 - OTG interrupt mask" ] # [ inline ( always ) ] pub fn otgint ( & self ) -> OtgintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgintR { bits } } # [ doc = "Bit 3 - Start of frame mask" ] # [ inline ( always ) ] pub fn sofm ( & self ) -> SofmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofmR { bits } } # [ doc = "Bit 4 - Receive FIFO non-empty mask" ] # [ inline ( always ) ] pub fn rxflvlm ( & self ) -> RxflvlmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxflvlmR { bits } } # [ doc = "Bit 5 - Non-periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn nptxfem ( & self ) -> NptxfemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxfemR { bits } } # [ doc = "Bit 6 - Global non-periodic IN NAK effective mask" ] # [ inline ( always ) ] pub fn ginakeffm ( & self ) -> GinakeffmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinakeffmR { bits } } # [ doc = "Bit 7 - Global OUT NAK effective mask" ] # [ inline ( always ) ] pub fn gonakeffm ( & self ) -> GonakeffmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GonakeffmR { bits } } # [ doc = "Bit 10 - Early suspend mask" ] # [ inline ( always ) ] pub fn esuspm ( & self ) -> EsuspmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EsuspmR { bits } } # [ doc = "Bit 11 - USB suspend mask" ] # [ inline ( always ) ] pub fn usbsuspm ( & self ) -> UsbsuspmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbsuspmR { bits } } # [ doc = "Bit 12 - USB reset mask" ] # [ inline ( always ) ] pub fn usbrst ( & self ) -> UsbrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbrstR { bits } } # [ doc = "Bit 13 - Enumeration done mask" ] # [ inline ( always ) ] pub fn enumdnem ( & self ) -> EnumdnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumdnemR { bits } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ] # [ inline ( always ) ] pub fn isoodrpm ( & self ) -> IsoodrpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IsoodrpmR { bits } } # [ doc = "Bit 15 - End of periodic frame interrupt mask" ] # [ inline ( always ) ] pub fn eopfm ( & self ) -> EopfmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopfmR { bits } } # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ] # [ inline ( always ) ] pub fn epmism ( & self ) -> EpmismR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpmismR { bits } } # [ doc = "Bit 18 - IN endpoints interrupt mask" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IepintR { bits } } # [ doc = "Bit 19 - OUT endpoints interrupt mask" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OepintR { bits } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ] # [ inline ( always ) ] pub fn iisoixfrm ( & self ) -> IisoixfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IisoixfrmR { bits } } # [ doc = "Bit 21 - Incomplete periodic transfer mask(Host mode)/Incomplete isochronous OUT transfer mask(Device mode)" ] # [ inline ( always ) ] pub fn ipxfrm_iisooxfrm ( & self ) -> IpxfrmIisooxfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IpxfrmIisooxfrmR { bits } } # [ doc = "Bit 24 - Host port interrupt mask" ] # [ inline ( always ) ] pub fn prtim ( & self ) -> PrtimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtimR { bits } } # [ doc = "Bit 25 - Host channels interrupt mask" ] # [ inline ( always ) ] pub fn hcim ( & self ) -> HcimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HcimR { bits } } # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ptxfem ( & self ) -> PtxfemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfemR { bits } } # [ doc = "Bit 28 - Connector ID status change mask" ] # [ inline ( always ) ] pub fn cidschgm ( & self ) -> CidschgmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidschgmR { bits } } # [ doc = "Bit 29 - Disconnect detected interrupt mask" ] # [ inline ( always ) ] pub fn discint ( & self ) -> DiscintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscintR { bits } } # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ] # [ inline ( always ) ] pub fn srqim ( & self ) -> SrqimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqimR { bits } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ] # [ inline ( always ) ] pub fn wuim ( & self ) -> WuimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WuimR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Mode mismatch interrupt mask" ] # [ inline ( always ) ] pub fn mmism ( & mut self ) -> _MmismW { _MmismW { w : self } } # [ doc = "Bit 2 - OTG interrupt mask" ] # [ inline ( always ) ] pub fn otgint ( & mut self ) -> _OtgintW { _OtgintW { w : self } } # [ doc = "Bit 3 - Start of frame mask" ] # [ inline ( always ) ] pub fn sofm ( & mut self ) -> _SofmW { _SofmW { w : self } } # [ doc = "Bit 4 - Receive FIFO non-empty mask" ] # [ inline ( always ) ] pub fn rxflvlm ( & mut self ) -> _RxflvlmW { _RxflvlmW { w : self } } # [ doc = "Bit 5 - Non-periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn nptxfem ( & mut self ) -> _NptxfemW { _NptxfemW { w : self } } # [ doc = "Bit 6 - Global non-periodic IN NAK effective mask" ] # [ inline ( always ) ] pub fn ginakeffm ( & mut self ) -> _GinakeffmW { _GinakeffmW { w : self } } # [ doc = "Bit 7 - Global OUT NAK effective mask" ] # [ inline ( always ) ] pub fn gonakeffm ( & mut self ) -> _GonakeffmW { _GonakeffmW { w : self } } # [ doc = "Bit 10 - Early suspend mask" ] # [ inline ( always ) ] pub fn esuspm ( & mut self ) -> _EsuspmW { _EsuspmW { w : self } } # [ doc = "Bit 11 - USB suspend mask" ] # [ inline ( always ) ] pub fn usbsuspm ( & mut self ) -> _UsbsuspmW { _UsbsuspmW { w : self } } # [ doc = "Bit 12 - USB reset mask" ] # [ inline ( always ) ] pub fn usbrst ( & mut self ) -> _UsbrstW { _UsbrstW { w : self } } # [ doc = "Bit 13 - Enumeration done mask" ] # [ inline ( always ) ] pub fn enumdnem ( & mut self ) -> _EnumdnemW { _EnumdnemW { w : self } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ] # [ inline ( always ) ] pub fn isoodrpm ( & mut self ) -> _IsoodrpmW { _IsoodrpmW { w : self } } # [ doc = "Bit 15 - End of periodic frame interrupt mask" ] # [ inline ( always ) ] pub fn eopfm ( & mut self ) -> _EopfmW { _EopfmW { w : self } } # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ] # [ inline ( always ) ] pub fn epmism ( & mut self ) -> _EpmismW { _EpmismW { w : self } } # [ doc = "Bit 18 - IN endpoints interrupt mask" ] # [ inline ( always ) ] pub fn iepint ( & mut self ) -> _IepintW { _IepintW { w : self } } # [ doc = "Bit 19 - OUT endpoints interrupt mask" ] # [ inline ( always ) ] pub fn oepint ( & mut self ) -> _OepintW { _OepintW { w : self } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ] # [ inline ( always ) ] pub fn iisoixfrm ( & mut self ) -> _IisoixfrmW { _IisoixfrmW { w : self } } # [ doc = "Bit 21 - Incomplete periodic transfer mask(Host mode)/Incomplete isochronous OUT transfer mask(Device mode)" ] # [ inline ( always ) ] pub fn ipxfrm_iisooxfrm ( & mut self ) -> _IpxfrmIisooxfrmW { _IpxfrmIisooxfrmW { w : self } } # [ doc = "Bit 25 - Host channels interrupt mask" ] # [ inline ( always ) ] pub fn hcim ( & mut self ) -> _HcimW { _HcimW { w : self } } # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ptxfem ( & mut self ) -> _PtxfemW { _PtxfemW { w : self } } # [ doc = "Bit 28 - Connector ID status change mask" ] # [ inline ( always ) ] pub fn cidschgm ( & mut self ) -> _CidschgmW { _CidschgmW { w : self } } # [ doc = "Bit 29 - Disconnect detected interrupt mask" ] # [ inline ( always ) ] pub fn discint ( & mut self ) -> _DiscintW { _DiscintW { w : self } } # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ] # [ inline ( always ) ] pub fn srqim ( & mut self ) -> _SrqimW { _SrqimW { w : self } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ] # [ inline ( always ) ] pub fn wuim ( & mut self ) -> _WuimW { _WuimW { w : self } } } } # [ doc = "OTG_FS Receive status debug read(Device mode)" ] pub struct FsGrxstsrDevice { register : VolatileCell < u32 > } # [ doc = "OTG_FS Receive status debug read(Device mode)" ] pub mod fs_grxstsr_device { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsGrxstsrDevice { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmnumR { bits : u8 , } impl FrmnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } # [ doc = "Bits 21:24 - Frame number" ] # [ inline ( always ) ] pub fn frmnum ( & self ) -> FrmnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmnumR { bits } } } } # [ doc = "OTG_FS Receive status debug read(Host mode)" ] pub struct FsGrxstsrHost { register : VolatileCell < u32 > } # [ doc = "OTG_FS Receive status debug read(Host mode)" ] pub mod fs_grxstsr_host { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsGrxstsrHost { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmnumR { bits : u8 , } impl FrmnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } # [ doc = "Bits 21:24 - Frame number" ] # [ inline ( always ) ] pub fn frmnum ( & self ) -> FrmnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmnumR { bits } } } } # [ doc = "OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ] pub struct FsGrxfsiz { register : VolatileCell < u32 > } # [ doc = "OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ] pub mod fs_grxfsiz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGrxfsiz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxfdR { bits : u16 , } impl RxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _RxfdW < 'a > { w : & 'a mut W , } impl < 'a > _RxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - RxFIFO depth" ] # [ inline ( always ) ] pub fn rxfd ( & self ) -> RxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - RxFIFO depth" ] # [ inline ( always ) ] pub fn rxfd ( & mut self ) -> _RxfdW { _RxfdW { w : self } } } } # [ doc = "OTG_FS non-periodic transmit FIFO size register (Device mode)" ] pub struct FsGnptxfsizDevice { register : VolatileCell < u32 > } # [ doc = "OTG_FS non-periodic transmit FIFO size register (Device mode)" ] pub mod fs_gnptxfsiz_device { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGnptxfsizDevice { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tx0fsaR { bits : u16 , } impl Tx0fsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tx0fdR { bits : u16 , } impl Tx0fdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tx0fsaW < 'a > { w : & 'a mut W , } impl < 'a > _Tx0fsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tx0fdW < 'a > { w : & 'a mut W , } impl < 'a > _Tx0fdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ] # [ inline ( always ) ] pub fn tx0fsa ( & self ) -> Tx0fsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Tx0fsaR { bits } } # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ] # [ inline ( always ) ] pub fn tx0fd ( & self ) -> Tx0fdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Tx0fdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ] # [ inline ( always ) ] pub fn tx0fsa ( & mut self ) -> _Tx0fsaW { _Tx0fsaW { w : self } } # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ] # [ inline ( always ) ] pub fn tx0fd ( & mut self ) -> _Tx0fdW { _Tx0fdW { w : self } } } } # [ doc = "OTG_FS non-periodic transmit FIFO size register (Host mode)" ] pub struct FsGnptxfsizHost { register : VolatileCell < u32 > } # [ doc = "OTG_FS non-periodic transmit FIFO size register (Host mode)" ] pub mod fs_gnptxfsiz_host { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGnptxfsizHost { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NptxfsaR { bits : u16 , } impl NptxfsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfdR { bits : u16 , } impl NptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NptxfsaW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Non-periodic transmit RAM start address" ] # [ inline ( always ) ] pub fn nptxfsa ( & self ) -> NptxfsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfsaR { bits } } # [ doc = "Bits 16:31 - Non-periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn nptxfd ( & self ) -> NptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Non-periodic transmit RAM start address" ] # [ inline ( always ) ] pub fn nptxfsa ( & mut self ) -> _NptxfsaW { _NptxfsaW { w : self } } # [ doc = "Bits 16:31 - Non-periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn nptxfd ( & mut self ) -> _NptxfdW { _NptxfdW { w : self } } } } # [ doc = "OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ] pub struct FsGnptxsts { register : VolatileCell < u32 > } # [ doc = "OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ] pub mod fs_gnptxsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsGnptxsts { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct NptxfsavR { bits : u16 , } impl NptxfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptqxsavR { bits : u8 , } impl NptqxsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxqtopR { bits : u8 , } impl NptxqtopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Non-periodic TxFIFO space available" ] # [ inline ( always ) ] pub fn nptxfsav ( & self ) -> NptxfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfsavR { bits } } # [ doc = "Bits 16:23 - Non-periodic transmit request queue space available" ] # [ inline ( always ) ] pub fn nptqxsav ( & self ) -> NptqxsavR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptqxsavR { bits } } # [ doc = "Bits 24:30 - Top of the non-periodic transmit request queue" ] # [ inline ( always ) ] pub fn nptxqtop ( & self ) -> NptxqtopR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxqtopR { bits } } } } # [ doc = "OTG_FS general core configuration register (OTG_FS_GCCFG)" ] pub struct FsGccfg { register : VolatileCell < u32 > } # [ doc = "OTG_FS general core configuration register (OTG_FS_GCCFG)" ] pub mod fs_gccfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsGccfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PwrdwnR { bits : u8 , } impl PwrdwnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VbusasenR { bits : u8 , } impl VbusasenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VbusbsenR { bits : u8 , } impl VbusbsenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofoutenR { bits : u8 , } impl SofoutenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PwrdwnW < 'a > { w : & 'a mut W , } impl < 'a > _PwrdwnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VbusasenW < 'a > { w : & 'a mut W , } impl < 'a > _VbusasenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VbusbsenW < 'a > { w : & 'a mut W , } impl < 'a > _VbusbsenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofoutenW < 'a > { w : & 'a mut W , } impl < 'a > _SofoutenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Power down" ] # [ inline ( always ) ] pub fn pwrdwn ( & self ) -> PwrdwnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrdwnR { bits } } # [ doc = "Bit 18 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusasen ( & self ) -> VbusasenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VbusasenR { bits } } # [ doc = "Bit 19 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusbsen ( & self ) -> VbusbsenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VbusbsenR { bits } } # [ doc = "Bit 20 - SOF output enable" ] # [ inline ( always ) ] pub fn sofouten ( & self ) -> SofoutenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofoutenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Power down" ] # [ inline ( always ) ] pub fn pwrdwn ( & mut self ) -> _PwrdwnW { _PwrdwnW { w : self } } # [ doc = "Bit 18 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusasen ( & mut self ) -> _VbusasenW { _VbusasenW { w : self } } # [ doc = "Bit 19 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusbsen ( & mut self ) -> _VbusbsenW { _VbusbsenW { w : self } } # [ doc = "Bit 20 - SOF output enable" ] # [ inline ( always ) ] pub fn sofouten ( & mut self ) -> _SofoutenW { _SofoutenW { w : self } } } } # [ doc = "core ID register" ] pub struct FsCid { register : VolatileCell < u32 > } # [ doc = "core ID register" ] pub mod fs_cid { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsCid { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ProductIdR { bits : u32 , } impl ProductIdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ProductIdW < 'a > { w : & 'a mut W , } impl < 'a > _ProductIdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Product ID field" ] # [ inline ( always ) ] pub fn product_id ( & self ) -> ProductIdR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ProductIdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4096 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Product ID field" ] # [ inline ( always ) ] pub fn product_id ( & mut self ) -> _ProductIdW { _ProductIdW { w : self } } } } # [ doc = "OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ] pub struct FsHptxfsiz { register : VolatileCell < u32 > } # [ doc = "OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ] pub mod fs_hptxfsiz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHptxfsiz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PtxsaR { bits : u16 , } impl PtxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfsizR { bits : u16 , } impl PtxfsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PtxsaW < 'a > { w : & 'a mut W , } impl < 'a > _PtxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfsizW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ] # [ inline ( always ) ] pub fn ptxsa ( & self ) -> PtxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxsaR { bits } } # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn ptxfsiz ( & self ) -> PtxfsizR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxfsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555968 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ] # [ inline ( always ) ] pub fn ptxsa ( & mut self ) -> _PtxsaW { _PtxsaW { w : self } } # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn ptxfsiz ( & mut self ) -> _PtxfsizW { _PtxfsizW { w : self } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ] pub struct FsDieptxf1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ] pub mod fs_dieptxf1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDieptxf1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFO2 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFO2 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ] pub struct FsDieptxf2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ] pub mod fs_dieptxf2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDieptxf2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFO3 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFO3 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ] pub struct FsDieptxf3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ] pub mod fs_dieptxf3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDieptxf3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFO4 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFO4 transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } } # [ doc = "USB on the go full speed" ] pub struct OtgFsGlobal { register_block : otg_fs_global :: RegisterBlock } impl Deref for OtgFsGlobal { type Target = otg_fs_global :: RegisterBlock ; fn deref ( & self ) -> & otg_fs_global :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go full speed" ] pub const OTG_FS_HOST : Peripheral < OtgFsHost > = unsafe { Peripheral :: new ( 1342178304 ) } ; # [ doc = "USB on the go full speed" ] pub mod otg_fs_host { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_FS host configuration register (OTG_FS_HCFG)" ] pub fs_hcfg : FsHcfg , # [ doc = "0x04 - OTG_FS Host frame interval register" ] pub hfir : Hfir , # [ doc = "0x08 - OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ] pub fs_hfnum : FsHfnum , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x10 - OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ] pub fs_hptxsts : FsHptxsts , # [ doc = "0x14 - OTG_FS Host all channels interrupt register" ] pub haint : Haint , # [ doc = "0x18 - OTG_FS host all channels interrupt mask register" ] pub haintmsk : Haintmsk , _reserved1 : [ u8 ; 36usize ] , # [ doc = "0x40 - OTG_FS host port control and status register (OTG_FS_HPRT)" ] pub fs_hprt : FsHprt , _reserved2 : [ u8 ; 188usize ] , # [ doc = "0x100 - OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ] pub fs_hcchar0 : FsHcchar0 , _reserved3 : [ u8 ; 4usize ] , # [ doc = "0x108 - OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ] pub fs_hcint0 : FsHcint0 , # [ doc = "0x10c - OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ] pub fs_hcintmsk0 : FsHcintmsk0 , # [ doc = "0x110 - OTG_FS host channel-0 transfer size register" ] pub fs_hctsiz0 : FsHctsiz0 , _reserved4 : [ u8 ; 12usize ] , # [ doc = "0x120 - OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ] pub fs_hcchar1 : FsHcchar1 , _reserved5 : [ u8 ; 4usize ] , # [ doc = "0x128 - OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ] pub fs_hcint1 : FsHcint1 , # [ doc = "0x12c - OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ] pub fs_hcintmsk1 : FsHcintmsk1 , # [ doc = "0x130 - OTG_FS host channel-1 transfer size register" ] pub fs_hctsiz1 : FsHctsiz1 , _reserved6 : [ u8 ; 12usize ] , # [ doc = "0x140 - OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ] pub fs_hcchar2 : FsHcchar2 , _reserved7 : [ u8 ; 4usize ] , # [ doc = "0x148 - OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ] pub fs_hcint2 : FsHcint2 , # [ doc = "0x14c - OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ] pub fs_hcintmsk2 : FsHcintmsk2 , # [ doc = "0x150 - OTG_FS host channel-2 transfer size register" ] pub fs_hctsiz2 : FsHctsiz2 , _reserved8 : [ u8 ; 12usize ] , # [ doc = "0x160 - OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ] pub fs_hcchar3 : FsHcchar3 , _reserved9 : [ u8 ; 4usize ] , # [ doc = "0x168 - OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ] pub fs_hcint3 : FsHcint3 , # [ doc = "0x16c - OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ] pub fs_hcintmsk3 : FsHcintmsk3 , # [ doc = "0x170 - OTG_FS host channel-3 transfer size register" ] pub fs_hctsiz3 : FsHctsiz3 , _reserved10 : [ u8 ; 12usize ] , # [ doc = "0x180 - OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ] pub fs_hcchar4 : FsHcchar4 , _reserved11 : [ u8 ; 4usize ] , # [ doc = "0x188 - OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ] pub fs_hcint4 : FsHcint4 , # [ doc = "0x18c - OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ] pub fs_hcintmsk4 : FsHcintmsk4 , # [ doc = "0x190 - OTG_FS host channel-x transfer size register" ] pub fs_hctsiz4 : FsHctsiz4 , _reserved12 : [ u8 ; 12usize ] , # [ doc = "0x1a0 - OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ] pub fs_hcchar5 : FsHcchar5 , _reserved13 : [ u8 ; 4usize ] , # [ doc = "0x1a8 - OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ] pub fs_hcint5 : FsHcint5 , # [ doc = "0x1ac - OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ] pub fs_hcintmsk5 : FsHcintmsk5 , # [ doc = "0x1b0 - OTG_FS host channel-5 transfer size register" ] pub fs_hctsiz5 : FsHctsiz5 , _reserved14 : [ u8 ; 12usize ] , # [ doc = "0x1c0 - OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ] pub fs_hcchar6 : FsHcchar6 , _reserved15 : [ u8 ; 4usize ] , # [ doc = "0x1c8 - OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ] pub fs_hcint6 : FsHcint6 , # [ doc = "0x1cc - OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ] pub fs_hcintmsk6 : FsHcintmsk6 , # [ doc = "0x1d0 - OTG_FS host channel-6 transfer size register" ] pub fs_hctsiz6 : FsHctsiz6 , _reserved16 : [ u8 ; 12usize ] , # [ doc = "0x1e0 - OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ] pub fs_hcchar7 : FsHcchar7 , _reserved17 : [ u8 ; 4usize ] , # [ doc = "0x1e8 - OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ] pub fs_hcint7 : FsHcint7 , # [ doc = "0x1ec - OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ] pub fs_hcintmsk7 : FsHcintmsk7 , # [ doc = "0x1f0 - OTG_FS host channel-7 transfer size register" ] pub fs_hctsiz7 : FsHctsiz7 , } # [ doc = "OTG_FS host configuration register (OTG_FS_HCFG)" ] pub struct FsHcfg { register : VolatileCell < u32 > } # [ doc = "OTG_FS host configuration register (OTG_FS_HCFG)" ] pub mod fs_hcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FslspcsR { bits : u8 , } impl FslspcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FslssR { bits : u8 , } impl FslssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FslspcsW < 'a > { w : & 'a mut W , } impl < 'a > _FslspcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - FS/LS PHY clock select" ] # [ inline ( always ) ] pub fn fslspcs ( & self ) -> FslspcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FslspcsR { bits } } # [ doc = "Bit 2 - FS- and LS-only support" ] # [ inline ( always ) ] pub fn fslss ( & self ) -> FslssR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FslssR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - FS/LS PHY clock select" ] # [ inline ( always ) ] pub fn fslspcs ( & mut self ) -> _FslspcsW { _FslspcsW { w : self } } } } # [ doc = "OTG_FS Host frame interval register" ] pub struct Hfir { register : VolatileCell < u32 > } # [ doc = "OTG_FS Host frame interval register" ] pub mod hfir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Hfir { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FrivlR { bits : u16 , } impl FrivlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _FrivlW < 'a > { w : & 'a mut W , } impl < 'a > _FrivlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Frame interval" ] # [ inline ( always ) ] pub fn frivl ( & self ) -> FrivlR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FrivlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 60000 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Frame interval" ] # [ inline ( always ) ] pub fn frivl ( & mut self ) -> _FrivlW { _FrivlW { w : self } } } } # [ doc = "OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ] pub struct FsHfnum { register : VolatileCell < u32 > } # [ doc = "OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ] pub mod fs_hfnum { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsHfnum { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct FrnumR { bits : u16 , } impl FrnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct FtremR { bits : u16 , } impl FtremR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Frame number" ] # [ inline ( always ) ] pub fn frnum ( & self ) -> FrnumR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FrnumR { bits } } # [ doc = "Bits 16:31 - Frame time remaining" ] # [ inline ( always ) ] pub fn ftrem ( & self ) -> FtremR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FtremR { bits } } } } # [ doc = "OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ] pub struct FsHptxsts { register : VolatileCell < u32 > } # [ doc = "OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ] pub mod fs_hptxsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHptxsts { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PtxfsavlR { bits : u16 , } impl PtxfsavlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxqsavR { bits : u8 , } impl PtxqsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxqtopR { bits : u8 , } impl PtxqtopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PtxfsavlW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfsavlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ] # [ inline ( always ) ] pub fn ptxfsavl ( & self ) -> PtxfsavlR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxfsavlR { bits } } # [ doc = "Bits 16:23 - Periodic transmit request queue space available" ] # [ inline ( always ) ] pub fn ptxqsav ( & self ) -> PtxqsavR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxqsavR { bits } } # [ doc = "Bits 24:31 - Top of the periodic transmit request queue" ] # [ inline ( always ) ] pub fn ptxqtop ( & self ) -> PtxqtopR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxqtopR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 524544 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ] # [ inline ( always ) ] pub fn ptxfsavl ( & mut self ) -> _PtxfsavlW { _PtxfsavlW { w : self } } } } # [ doc = "OTG_FS Host all channels interrupt register" ] pub struct Haint { register : VolatileCell < u32 > } # [ doc = "OTG_FS Host all channels interrupt register" ] pub mod haint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Haint { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HaintR { bits : u16 , } impl HaintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Channel interrupts" ] # [ inline ( always ) ] pub fn haint ( & self ) -> HaintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HaintR { bits } } } } # [ doc = "OTG_FS host all channels interrupt mask register" ] pub struct Haintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS host all channels interrupt mask register" ] pub mod haintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Haintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HaintmR { bits : u16 , } impl HaintmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _HaintmW < 'a > { w : & 'a mut W , } impl < 'a > _HaintmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Channel interrupt mask" ] # [ inline ( always ) ] pub fn haintm ( & self ) -> HaintmR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HaintmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Channel interrupt mask" ] # [ inline ( always ) ] pub fn haintm ( & mut self ) -> _HaintmW { _HaintmW { w : self } } } } # [ doc = "OTG_FS host port control and status register (OTG_FS_HPRT)" ] pub struct FsHprt { register : VolatileCell < u32 > } # [ doc = "OTG_FS host port control and status register (OTG_FS_HPRT)" ] pub mod fs_hprt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHprt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PcstsR { bits : u8 , } impl PcstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PcdetR { bits : u8 , } impl PcdetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PenaR { bits : u8 , } impl PenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PenchngR { bits : u8 , } impl PenchngR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PocaR { bits : u8 , } impl PocaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PocchngR { bits : u8 , } impl PocchngR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PresR { bits : u8 , } impl PresR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsuspR { bits : u8 , } impl PsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PrstR { bits : u8 , } impl PrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlstsR { bits : u8 , } impl PlstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PpwrR { bits : u8 , } impl PpwrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtctlR { bits : u8 , } impl PtctlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PspdR { bits : u8 , } impl PspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PcdetW < 'a > { w : & 'a mut W , } impl < 'a > _PcdetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PenaW < 'a > { w : & 'a mut W , } impl < 'a > _PenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PenchngW < 'a > { w : & 'a mut W , } impl < 'a > _PenchngW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PocchngW < 'a > { w : & 'a mut W , } impl < 'a > _PocchngW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PresW < 'a > { w : & 'a mut W , } impl < 'a > _PresW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsuspW < 'a > { w : & 'a mut W , } impl < 'a > _PsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PrstW < 'a > { w : & 'a mut W , } impl < 'a > _PrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PpwrW < 'a > { w : & 'a mut W , } impl < 'a > _PpwrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtctlW < 'a > { w : & 'a mut W , } impl < 'a > _PtctlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Port connect status" ] # [ inline ( always ) ] pub fn pcsts ( & self ) -> PcstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcstsR { bits } } # [ doc = "Bit 1 - Port connect detected" ] # [ inline ( always ) ] pub fn pcdet ( & self ) -> PcdetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcdetR { bits } } # [ doc = "Bit 2 - Port enable" ] # [ inline ( always ) ] pub fn pena ( & self ) -> PenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PenaR { bits } } # [ doc = "Bit 3 - Port enable/disable change" ] # [ inline ( always ) ] pub fn penchng ( & self ) -> PenchngR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PenchngR { bits } } # [ doc = "Bit 4 - Port overcurrent active" ] # [ inline ( always ) ] pub fn poca ( & self ) -> PocaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PocaR { bits } } # [ doc = "Bit 5 - Port overcurrent change" ] # [ inline ( always ) ] pub fn pocchng ( & self ) -> PocchngR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PocchngR { bits } } # [ doc = "Bit 6 - Port resume" ] # [ inline ( always ) ] pub fn pres ( & self ) -> PresR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PresR { bits } } # [ doc = "Bit 7 - Port suspend" ] # [ inline ( always ) ] pub fn psusp ( & self ) -> PsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsuspR { bits } } # [ doc = "Bit 8 - Port reset" ] # [ inline ( always ) ] pub fn prst ( & self ) -> PrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrstR { bits } } # [ doc = "Bits 10:11 - Port line status" ] # [ inline ( always ) ] pub fn plsts ( & self ) -> PlstsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlstsR { bits } } # [ doc = "Bit 12 - Port power" ] # [ inline ( always ) ] pub fn ppwr ( & self ) -> PpwrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PpwrR { bits } } # [ doc = "Bits 13:16 - Port test control" ] # [ inline ( always ) ] pub fn ptctl ( & self ) -> PtctlR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtctlR { bits } } # [ doc = "Bits 17:18 - Port speed" ] # [ inline ( always ) ] pub fn pspd ( & self ) -> PspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PspdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Port connect detected" ] # [ inline ( always ) ] pub fn pcdet ( & mut self ) -> _PcdetW { _PcdetW { w : self } } # [ doc = "Bit 2 - Port enable" ] # [ inline ( always ) ] pub fn pena ( & mut self ) -> _PenaW { _PenaW { w : self } } # [ doc = "Bit 3 - Port enable/disable change" ] # [ inline ( always ) ] pub fn penchng ( & mut self ) -> _PenchngW { _PenchngW { w : self } } # [ doc = "Bit 5 - Port overcurrent change" ] # [ inline ( always ) ] pub fn pocchng ( & mut self ) -> _PocchngW { _PocchngW { w : self } } # [ doc = "Bit 6 - Port resume" ] # [ inline ( always ) ] pub fn pres ( & mut self ) -> _PresW { _PresW { w : self } } # [ doc = "Bit 7 - Port suspend" ] # [ inline ( always ) ] pub fn psusp ( & mut self ) -> _PsuspW { _PsuspW { w : self } } # [ doc = "Bit 8 - Port reset" ] # [ inline ( always ) ] pub fn prst ( & mut self ) -> _PrstW { _PrstW { w : self } } # [ doc = "Bit 12 - Port power" ] # [ inline ( always ) ] pub fn ppwr ( & mut self ) -> _PpwrW { _PpwrW { w : self } } # [ doc = "Bits 13:16 - Port test control" ] # [ inline ( always ) ] pub fn ptctl ( & mut self ) -> _PtctlW { _PtctlW { w : self } } } } # [ doc = "OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ] pub struct FsHcchar0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ] pub mod fs_hcchar0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ] pub struct FsHcchar1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ] pub mod fs_hcchar1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ] pub struct FsHcchar2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ] pub mod fs_hcchar2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ] pub struct FsHcchar3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ] pub mod fs_hcchar3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ] pub struct FsHcchar4 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ] pub mod fs_hcchar4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ] pub struct FsHcchar5 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ] pub mod fs_hcchar5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ] pub struct FsHcchar6 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ] pub mod fs_hcchar6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ] pub struct FsHcchar7 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ] pub mod fs_hcchar7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcchar7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multicount" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ] pub struct FsHcint0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ] pub mod fs_hcint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ] pub struct FsHcint1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ] pub mod fs_hcint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ] pub struct FsHcint2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ] pub mod fs_hcint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ] pub struct FsHcint3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ] pub mod fs_hcint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ] pub struct FsHcint4 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ] pub mod fs_hcint4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ] pub struct FsHcint5 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ] pub mod fs_hcint5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ] pub struct FsHcint6 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ] pub mod fs_hcint6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ] pub struct FsHcint7 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ] pub mod fs_hcint7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcint7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ] pub struct FsHcintmsk0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ] pub mod fs_hcintmsk0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ] pub struct FsHcintmsk1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ] pub mod fs_hcintmsk1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ] pub struct FsHcintmsk2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ] pub mod fs_hcintmsk2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ] pub struct FsHcintmsk3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ] pub mod fs_hcintmsk3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ] pub struct FsHcintmsk4 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ] pub mod fs_hcintmsk4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ] pub struct FsHcintmsk5 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ] pub mod fs_hcintmsk5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ] pub struct FsHcintmsk6 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ] pub mod fs_hcintmsk6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ] pub struct FsHcintmsk7 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ] pub mod fs_hcintmsk7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHcintmsk7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_FS host channel-0 transfer size register" ] pub struct FsHctsiz0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-0 transfer size register" ] pub mod fs_hctsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-1 transfer size register" ] pub struct FsHctsiz1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-1 transfer size register" ] pub mod fs_hctsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-2 transfer size register" ] pub struct FsHctsiz2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-2 transfer size register" ] pub mod fs_hctsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-3 transfer size register" ] pub struct FsHctsiz3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-3 transfer size register" ] pub mod fs_hctsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-x transfer size register" ] pub struct FsHctsiz4 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-x transfer size register" ] pub mod fs_hctsiz4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-5 transfer size register" ] pub struct FsHctsiz5 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-5 transfer size register" ] pub mod fs_hctsiz5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-6 transfer size register" ] pub struct FsHctsiz6 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-6 transfer size register" ] pub mod fs_hctsiz6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_FS host channel-7 transfer size register" ] pub struct FsHctsiz7 { register : VolatileCell < u32 > } # [ doc = "OTG_FS host channel-7 transfer size register" ] pub mod fs_hctsiz7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsHctsiz7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } } # [ doc = "USB on the go full speed" ] pub struct OtgFsHost { register_block : otg_fs_host :: RegisterBlock } impl Deref for OtgFsHost { type Target = otg_fs_host :: RegisterBlock ; fn deref ( & self ) -> & otg_fs_host :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go full speed" ] pub const OTG_FS_DEVICE : Peripheral < OtgFsDevice > = unsafe { Peripheral :: new ( 1342179328 ) } ; # [ doc = "USB on the go full speed" ] pub mod otg_fs_device { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_FS device configuration register (OTG_FS_DCFG)" ] pub fs_dcfg : FsDcfg , # [ doc = "0x04 - OTG_FS device control register (OTG_FS_DCTL)" ] pub fs_dctl : FsDctl , # [ doc = "0x08 - OTG_FS device status register (OTG_FS_DSTS)" ] pub fs_dsts : FsDsts , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x10 - OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ] pub fs_diepmsk : FsDiepmsk , # [ doc = "0x14 - OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ] pub fs_doepmsk : FsDoepmsk , # [ doc = "0x18 - OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ] pub fs_daint : FsDaint , # [ doc = "0x1c - OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ] pub fs_daintmsk : FsDaintmsk , _reserved1 : [ u8 ; 8usize ] , # [ doc = "0x28 - OTG_FS device VBUS discharge time register" ] pub dvbusdis : Dvbusdis , # [ doc = "0x2c - OTG_FS device VBUS pulsing time register" ] pub dvbuspulse : Dvbuspulse , _reserved2 : [ u8 ; 4usize ] , # [ doc = "0x34 - OTG_FS device IN endpoint FIFO empty interrupt mask register" ] pub diepempmsk : Diepempmsk , _reserved3 : [ u8 ; 200usize ] , # [ doc = "0x100 - OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ] pub fs_diepctl0 : FsDiepctl0 , _reserved4 : [ u8 ; 4usize ] , # [ doc = "0x108 - device endpoint-x interrupt register" ] pub diepint0 : Diepint0 , _reserved5 : [ u8 ; 4usize ] , # [ doc = "0x110 - device endpoint-0 transfer size register" ] pub dieptsiz0 : Dieptsiz0 , _reserved6 : [ u8 ; 4usize ] , # [ doc = "0x118 - OTG_FS device IN endpoint transmit FIFO status register" ] pub dtxfsts0 : Dtxfsts0 , _reserved7 : [ u8 ; 4usize ] , # [ doc = "0x120 - OTG device endpoint-1 control register" ] pub diepctl1 : Diepctl1 , _reserved8 : [ u8 ; 4usize ] , # [ doc = "0x128 - device endpoint-1 interrupt register" ] pub diepint1 : Diepint1 , _reserved9 : [ u8 ; 4usize ] , # [ doc = "0x130 - device endpoint-1 transfer size register" ] pub dieptsiz1 : Dieptsiz1 , _reserved10 : [ u8 ; 4usize ] , # [ doc = "0x138 - OTG_FS device IN endpoint transmit FIFO status register" ] pub dtxfsts1 : Dtxfsts1 , _reserved11 : [ u8 ; 4usize ] , # [ doc = "0x140 - OTG device endpoint-2 control register" ] pub diepctl2 : Diepctl2 , _reserved12 : [ u8 ; 4usize ] , # [ doc = "0x148 - device endpoint-2 interrupt register" ] pub diepint2 : Diepint2 , _reserved13 : [ u8 ; 4usize ] , # [ doc = "0x150 - device endpoint-2 transfer size register" ] pub dieptsiz2 : Dieptsiz2 , _reserved14 : [ u8 ; 4usize ] , # [ doc = "0x158 - OTG_FS device IN endpoint transmit FIFO status register" ] pub dtxfsts2 : Dtxfsts2 , _reserved15 : [ u8 ; 4usize ] , # [ doc = "0x160 - OTG device endpoint-3 control register" ] pub diepctl3 : Diepctl3 , _reserved16 : [ u8 ; 4usize ] , # [ doc = "0x168 - device endpoint-3 interrupt register" ] pub diepint3 : Diepint3 , _reserved17 : [ u8 ; 4usize ] , # [ doc = "0x170 - device endpoint-3 transfer size register" ] pub dieptsiz3 : Dieptsiz3 , _reserved18 : [ u8 ; 4usize ] , # [ doc = "0x178 - OTG_FS device IN endpoint transmit FIFO status register" ] pub dtxfsts3 : Dtxfsts3 , _reserved19 : [ u8 ; 388usize ] , # [ doc = "0x300 - device endpoint-0 control register" ] pub doepctl0 : Doepctl0 , _reserved20 : [ u8 ; 4usize ] , # [ doc = "0x308 - device endpoint-0 interrupt register" ] pub doepint0 : Doepint0 , _reserved21 : [ u8 ; 4usize ] , # [ doc = "0x310 - device OUT endpoint-0 transfer size register" ] pub doeptsiz0 : Doeptsiz0 , _reserved22 : [ u8 ; 12usize ] , # [ doc = "0x320 - device endpoint-1 control register" ] pub doepctl1 : Doepctl1 , _reserved23 : [ u8 ; 4usize ] , # [ doc = "0x328 - device endpoint-1 interrupt register" ] pub doepint1 : Doepint1 , _reserved24 : [ u8 ; 4usize ] , # [ doc = "0x330 - device OUT endpoint-1 transfer size register" ] pub doeptsiz1 : Doeptsiz1 , _reserved25 : [ u8 ; 12usize ] , # [ doc = "0x340 - device endpoint-2 control register" ] pub doepctl2 : Doepctl2 , _reserved26 : [ u8 ; 4usize ] , # [ doc = "0x348 - device endpoint-2 interrupt register" ] pub doepint2 : Doepint2 , _reserved27 : [ u8 ; 4usize ] , # [ doc = "0x350 - device OUT endpoint-2 transfer size register" ] pub doeptsiz2 : Doeptsiz2 , _reserved28 : [ u8 ; 12usize ] , # [ doc = "0x360 - device endpoint-3 control register" ] pub doepctl3 : Doepctl3 , _reserved29 : [ u8 ; 4usize ] , # [ doc = "0x368 - device endpoint-3 interrupt register" ] pub doepint3 : Doepint3 , _reserved30 : [ u8 ; 4usize ] , # [ doc = "0x370 - device OUT endpoint-3 transfer size register" ] pub doeptsiz3 : Doeptsiz3 , } # [ doc = "OTG_FS device configuration register (OTG_FS_DCFG)" ] pub struct FsDcfg { register : VolatileCell < u32 > } # [ doc = "OTG_FS device configuration register (OTG_FS_DCFG)" ] pub mod fs_dcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DspdR { bits : u8 , } impl DspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NzlsohskR { bits : u8 , } impl NzlsohskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfivlR { bits : u8 , } impl PfivlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DspdW < 'a > { w : & 'a mut W , } impl < 'a > _DspdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NzlsohskW < 'a > { w : & 'a mut W , } impl < 'a > _NzlsohskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfivlW < 'a > { w : & 'a mut W , } impl < 'a > _PfivlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - Device speed" ] # [ inline ( always ) ] pub fn dspd ( & self ) -> DspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DspdR { bits } } # [ doc = "Bit 2 - Non-zero-length status OUT handshake" ] # [ inline ( always ) ] pub fn nzlsohsk ( & self ) -> NzlsohskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NzlsohskR { bits } } # [ doc = "Bits 4:10 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bits 11:12 - Periodic frame interval" ] # [ inline ( always ) ] pub fn pfivl ( & self ) -> PfivlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfivlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 35651584 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - Device speed" ] # [ inline ( always ) ] pub fn dspd ( & mut self ) -> _DspdW { _DspdW { w : self } } # [ doc = "Bit 2 - Non-zero-length status OUT handshake" ] # [ inline ( always ) ] pub fn nzlsohsk ( & mut self ) -> _NzlsohskW { _NzlsohskW { w : self } } # [ doc = "Bits 4:10 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bits 11:12 - Periodic frame interval" ] # [ inline ( always ) ] pub fn pfivl ( & mut self ) -> _PfivlW { _PfivlW { w : self } } } } # [ doc = "OTG_FS device control register (OTG_FS_DCTL)" ] pub struct FsDctl { register : VolatileCell < u32 > } # [ doc = "OTG_FS device control register (OTG_FS_DCTL)" ] pub mod fs_dctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RwusigR { bits : u8 , } impl RwusigR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdisR { bits : u8 , } impl SdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinstsR { bits : u8 , } impl GinstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GonstsR { bits : u8 , } impl GonstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TctlR { bits : u8 , } impl TctlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SginakR { bits : u8 , } impl SginakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CginakR { bits : u8 , } impl CginakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SgonakR { bits : u8 , } impl SgonakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CgonakR { bits : u8 , } impl CgonakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PoprgdneR { bits : u8 , } impl PoprgdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RwusigW < 'a > { w : & 'a mut W , } impl < 'a > _RwusigW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdisW < 'a > { w : & 'a mut W , } impl < 'a > _SdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TctlW < 'a > { w : & 'a mut W , } impl < 'a > _TctlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SginakW < 'a > { w : & 'a mut W , } impl < 'a > _SginakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CginakW < 'a > { w : & 'a mut W , } impl < 'a > _CginakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SgonakW < 'a > { w : & 'a mut W , } impl < 'a > _SgonakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CgonakW < 'a > { w : & 'a mut W , } impl < 'a > _CgonakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PoprgdneW < 'a > { w : & 'a mut W , } impl < 'a > _PoprgdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Remote wakeup signaling" ] # [ inline ( always ) ] pub fn rwusig ( & self ) -> RwusigR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwusigR { bits } } # [ doc = "Bit 1 - Soft disconnect" ] # [ inline ( always ) ] pub fn sdis ( & self ) -> SdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdisR { bits } } # [ doc = "Bit 2 - Global IN NAK status" ] # [ inline ( always ) ] pub fn ginsts ( & self ) -> GinstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinstsR { bits } } # [ doc = "Bit 3 - Global OUT NAK status" ] # [ inline ( always ) ] pub fn gonsts ( & self ) -> GonstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GonstsR { bits } } # [ doc = "Bits 4:6 - Test control" ] # [ inline ( always ) ] pub fn tctl ( & self ) -> TctlR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TctlR { bits } } # [ doc = "Bit 7 - Set global IN NAK" ] # [ inline ( always ) ] pub fn sginak ( & self ) -> SginakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SginakR { bits } } # [ doc = "Bit 8 - Clear global IN NAK" ] # [ inline ( always ) ] pub fn cginak ( & self ) -> CginakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CginakR { bits } } # [ doc = "Bit 9 - Set global OUT NAK" ] # [ inline ( always ) ] pub fn sgonak ( & self ) -> SgonakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SgonakR { bits } } # [ doc = "Bit 10 - Clear global OUT NAK" ] # [ inline ( always ) ] pub fn cgonak ( & self ) -> CgonakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CgonakR { bits } } # [ doc = "Bit 11 - Power-on programming done" ] # [ inline ( always ) ] pub fn poprgdne ( & self ) -> PoprgdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PoprgdneR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Remote wakeup signaling" ] # [ inline ( always ) ] pub fn rwusig ( & mut self ) -> _RwusigW { _RwusigW { w : self } } # [ doc = "Bit 1 - Soft disconnect" ] # [ inline ( always ) ] pub fn sdis ( & mut self ) -> _SdisW { _SdisW { w : self } } # [ doc = "Bits 4:6 - Test control" ] # [ inline ( always ) ] pub fn tctl ( & mut self ) -> _TctlW { _TctlW { w : self } } # [ doc = "Bit 7 - Set global IN NAK" ] # [ inline ( always ) ] pub fn sginak ( & mut self ) -> _SginakW { _SginakW { w : self } } # [ doc = "Bit 8 - Clear global IN NAK" ] # [ inline ( always ) ] pub fn cginak ( & mut self ) -> _CginakW { _CginakW { w : self } } # [ doc = "Bit 9 - Set global OUT NAK" ] # [ inline ( always ) ] pub fn sgonak ( & mut self ) -> _SgonakW { _SgonakW { w : self } } # [ doc = "Bit 10 - Clear global OUT NAK" ] # [ inline ( always ) ] pub fn cgonak ( & mut self ) -> _CgonakW { _CgonakW { w : self } } # [ doc = "Bit 11 - Power-on programming done" ] # [ inline ( always ) ] pub fn poprgdne ( & mut self ) -> _PoprgdneW { _PoprgdneW { w : self } } } } # [ doc = "OTG_FS device status register (OTG_FS_DSTS)" ] pub struct FsDsts { register : VolatileCell < u32 > } # [ doc = "OTG_FS device status register (OTG_FS_DSTS)" ] pub mod fs_dsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsDsts { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct SuspstsR { bits : u8 , } impl SuspstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumspdR { bits : u8 , } impl EnumspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EerrR { bits : u8 , } impl EerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FnsofR { bits : u16 , } impl FnsofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Suspend status" ] # [ inline ( always ) ] pub fn suspsts ( & self ) -> SuspstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SuspstsR { bits } } # [ doc = "Bits 1:2 - Enumerated speed" ] # [ inline ( always ) ] pub fn enumspd ( & self ) -> EnumspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumspdR { bits } } # [ doc = "Bit 3 - Erratic error" ] # [ inline ( always ) ] pub fn eerr ( & self ) -> EerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EerrR { bits } } # [ doc = "Bits 8:21 - Frame number of the received SOF" ] # [ inline ( always ) ] pub fn fnsof ( & self ) -> FnsofR { let bits = { const MASK : u16 = 16383 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FnsofR { bits } } } } # [ doc = "OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ] pub struct FsDiepmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ] pub mod fs_diepmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDiepmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TomR { bits : u8 , } impl TomR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfemskR { bits : u8 , } impl IttxfemskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnmmR { bits : u8 , } impl InepnmmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnemR { bits : u8 , } impl InepnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TomW < 'a > { w : & 'a mut W , } impl < 'a > _TomW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfemskW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfemskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnmmW < 'a > { w : & 'a mut W , } impl < 'a > _InepnmmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnemW < 'a > { w : & 'a mut W , } impl < 'a > _InepnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - Timeout condition mask (Non-isochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & self ) -> TomR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TomR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & self ) -> IttxfemskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfemskR { bits } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & self ) -> InepnmmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnmmR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & self ) -> InepnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnemR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - Timeout condition mask (Non-isochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & mut self ) -> _TomW { _TomW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & mut self ) -> _IttxfemskW { _IttxfemskW { w : self } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & mut self ) -> _InepnmmW { _InepnmmW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & mut self ) -> _InepnemW { _InepnemW { w : self } } } } # [ doc = "OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ] pub struct FsDoepmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ] pub mod fs_doepmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDoepmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupmR { bits : u8 , } impl StupmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdmR { bits : u8 , } impl OtepdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupmW < 'a > { w : & 'a mut W , } impl < 'a > _StupmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdmW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - SETUP phase done mask" ] # [ inline ( always ) ] pub fn stupm ( & self ) -> StupmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupmR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ] # [ inline ( always ) ] pub fn otepdm ( & self ) -> OtepdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - SETUP phase done mask" ] # [ inline ( always ) ] pub fn stupm ( & mut self ) -> _StupmW { _StupmW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ] # [ inline ( always ) ] pub fn otepdm ( & mut self ) -> _OtepdmW { _OtepdmW { w : self } } } } # [ doc = "OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ] pub struct FsDaint { register : VolatileCell < u32 > } # [ doc = "OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ] pub mod fs_daint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: FsDaint { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u16 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u16 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint interrupt bits" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IepintR { bits } } # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; OepintR { bits } } } } # [ doc = "OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ] pub struct FsDaintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ] pub mod fs_daintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDaintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IepmR { bits : u16 , } impl IepmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u16 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IepmW < 'a > { w : & 'a mut W , } impl < 'a > _IepmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OepintW < 'a > { w : & 'a mut W , } impl < 'a > _OepintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ] # [ inline ( always ) ] pub fn iepm ( & self ) -> IepmR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IepmR { bits } } # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; OepintR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ] # [ inline ( always ) ] pub fn iepm ( & mut self ) -> _IepmW { _IepmW { w : self } } # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ] # [ inline ( always ) ] pub fn oepint ( & mut self ) -> _OepintW { _OepintW { w : self } } } } # [ doc = "OTG_FS device VBUS discharge time register" ] pub struct Dvbusdis { register : VolatileCell < u32 > } # [ doc = "OTG_FS device VBUS discharge time register" ] pub mod dvbusdis { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dvbusdis { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct VbusdtR { bits : u16 , } impl VbusdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _VbusdtW < 'a > { w : & 'a mut W , } impl < 'a > _VbusdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Device VBUS discharge time" ] # [ inline ( always ) ] pub fn vbusdt ( & self ) -> VbusdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; VbusdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 6103 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Device VBUS discharge time" ] # [ inline ( always ) ] pub fn vbusdt ( & mut self ) -> _VbusdtW { _VbusdtW { w : self } } } } # [ doc = "OTG_FS device VBUS pulsing time register" ] pub struct Dvbuspulse { register : VolatileCell < u32 > } # [ doc = "OTG_FS device VBUS pulsing time register" ] pub mod dvbuspulse { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dvbuspulse { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DvbuspR { bits : u16 , } impl DvbuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DvbuspW < 'a > { w : & 'a mut W , } impl < 'a > _DvbuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Device VBUS pulsing time" ] # [ inline ( always ) ] pub fn dvbusp ( & self ) -> DvbuspR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DvbuspR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1464 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Device VBUS pulsing time" ] # [ inline ( always ) ] pub fn dvbusp ( & mut self ) -> _DvbuspW { _DvbuspW { w : self } } } } # [ doc = "OTG_FS device IN endpoint FIFO empty interrupt mask register" ] pub struct Diepempmsk { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint FIFO empty interrupt mask register" ] pub mod diepempmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepempmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxfemR { bits : u16 , } impl IneptxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxfemW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ] # [ inline ( always ) ] pub fn ineptxfem ( & self ) -> IneptxfemR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfemR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ] # [ inline ( always ) ] pub fn ineptxfem ( & mut self ) -> _IneptxfemW { _IneptxfemW { w : self } } } } # [ doc = "OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ] pub struct FsDiepctl0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ] pub mod fs_diepctl0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsDiepctl0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u8 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } } } # [ doc = "OTG device endpoint-1 control register" ] pub struct Diepctl1 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-1 control register" ] pub mod diepctl1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepctl1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmSd1pidW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmSd1pidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM/SD1PID" ] # [ inline ( always ) ] pub fn soddfrm_sd1pid ( & mut self ) -> _SoddfrmSd1pidW { _SoddfrmSd1pidW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "OTG device endpoint-2 control register" ] pub struct Diepctl2 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-2 control register" ] pub mod diepctl2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepctl2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "OTG device endpoint-3 control register" ] pub struct Diepctl3 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-3 control register" ] pub mod diepctl3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepctl3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bits 22:25 - TXFNUM" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "device endpoint-0 control register" ] pub struct Doepctl0 { register : VolatileCell < u32 > } # [ doc = "device endpoint-0 control register" ] pub mod doepctl0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepctl0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u8 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:1 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 32768 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } } } # [ doc = "device endpoint-1 control register" ] pub struct Doepctl1 { register : VolatileCell < u32 > } # [ doc = "device endpoint-1 control register" ] pub mod doepctl1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepctl1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "device endpoint-2 control register" ] pub struct Doepctl2 { register : VolatileCell < u32 > } # [ doc = "device endpoint-2 control register" ] pub mod doepctl2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepctl2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "device endpoint-3 control register" ] pub struct Doepctl3 { register : VolatileCell < u32 > } # [ doc = "device endpoint-3 control register" ] pub mod doepctl3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepctl3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 17 - NAKSTS" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bit 16 - EONUM/DPID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - EPENA" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } # [ doc = "Bit 30 - EPDIS" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 29 - SODDFRM" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 28 - SD0PID/SEVNFRM" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 27 - SNAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 26 - CNAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 21 - Stall" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 20 - SNPM" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bits 18:19 - EPTYP" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 15 - USBAEP" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 0:10 - MPSIZ" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } } } # [ doc = "device endpoint-x interrupt register" ] pub struct Diepint0 { register : VolatileCell < u32 > } # [ doc = "device endpoint-x interrupt register" ] pub mod diepint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TXFE" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-1 interrupt register" ] pub struct Diepint1 { register : VolatileCell < u32 > } # [ doc = "device endpoint-1 interrupt register" ] pub mod diepint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TXFE" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-2 interrupt register" ] pub struct Diepint2 { register : VolatileCell < u32 > } # [ doc = "device endpoint-2 interrupt register" ] pub mod diepint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TXFE" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-3 interrupt register" ] pub struct Diepint3 { register : VolatileCell < u32 > } # [ doc = "device endpoint-3 interrupt register" ] pub mod diepint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Diepint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 7 - TXFE" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - INEPNE" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 4 - ITTXFE" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 3 - TOC" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-0 interrupt register" ] pub struct Doepint0 { register : VolatileCell < u32 > } # [ doc = "device endpoint-0 interrupt register" ] pub mod doepint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-1 interrupt register" ] pub struct Doepint1 { register : VolatileCell < u32 > } # [ doc = "device endpoint-1 interrupt register" ] pub mod doepint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-2 interrupt register" ] pub struct Doepint2 { register : VolatileCell < u32 > } # [ doc = "device endpoint-2 interrupt register" ] pub mod doepint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-3 interrupt register" ] pub struct Doepint3 { register : VolatileCell < u32 > } # [ doc = "device endpoint-3 interrupt register" ] pub mod doepint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doepint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 6 - B2BSTUP" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 4 - OTEPDIS" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 3 - STUP" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 1 - EPDISD" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 0 - XFRC" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } } } # [ doc = "device endpoint-0 transfer size register" ] pub struct Dieptsiz0 { register : VolatileCell < u32 > } # [ doc = "device endpoint-0 transfer size register" ] pub mod dieptsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dieptsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u8 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u8 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 19:20 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktcntR { bits } } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 19:20 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device OUT endpoint-0 transfer size register" ] pub struct Doeptsiz0 { register : VolatileCell < u32 > } # [ doc = "device OUT endpoint-0 transfer size register" ] pub mod doeptsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doeptsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StupcntR { bits : u8 , } impl StupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u8 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u8 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StupcntW < 'a > { w : & 'a mut W , } impl < 'a > _StupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - SETUP packet count" ] # [ inline ( always ) ] pub fn stupcnt ( & self ) -> StupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupcntR { bits } } # [ doc = "Bit 19 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktcntR { bits } } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - SETUP packet count" ] # [ inline ( always ) ] pub fn stupcnt ( & mut self ) -> _StupcntW { _StupcntW { w : self } } # [ doc = "Bit 19 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device endpoint-1 transfer size register" ] pub struct Dieptsiz1 { register : VolatileCell < u32 > } # [ doc = "device endpoint-1 transfer size register" ] pub mod dieptsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dieptsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device endpoint-2 transfer size register" ] pub struct Dieptsiz2 { register : VolatileCell < u32 > } # [ doc = "device endpoint-2 transfer size register" ] pub mod dieptsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dieptsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device endpoint-3 transfer size register" ] pub struct Dieptsiz3 { register : VolatileCell < u32 > } # [ doc = "device endpoint-3 transfer size register" ] pub mod dieptsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Dieptsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub struct Dtxfsts0 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub mod dtxfsts0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dtxfsts0 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub struct Dtxfsts1 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub mod dtxfsts1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dtxfsts1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub struct Dtxfsts2 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub mod dtxfsts2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dtxfsts2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub struct Dtxfsts3 { register : VolatileCell < u32 > } # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ] pub mod dtxfsts3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Dtxfsts3 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "device OUT endpoint-1 transfer size register" ] pub struct Doeptsiz1 { register : VolatileCell < u32 > } # [ doc = "device OUT endpoint-1 transfer size register" ] pub mod doeptsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doeptsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device OUT endpoint-2 transfer size register" ] pub struct Doeptsiz2 { register : VolatileCell < u32 > } # [ doc = "device OUT endpoint-2 transfer size register" ] pub mod doeptsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doeptsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } # [ doc = "device OUT endpoint-3 transfer size register" ] pub struct Doeptsiz3 { register : VolatileCell < u32 > } # [ doc = "device OUT endpoint-3 transfer size register" ] pub mod doeptsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Doeptsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } } } } # [ doc = "USB on the go full speed" ] pub struct OtgFsDevice { register_block : otg_fs_device :: RegisterBlock } impl Deref for OtgFsDevice { type Target = otg_fs_device :: RegisterBlock ; fn deref ( & self ) -> & otg_fs_device :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go full speed" ] pub const OTG_FS_PWRCLK : Peripheral < OtgFsPwrclk > = unsafe { Peripheral :: new ( 1342180864 ) } ; # [ doc = "USB on the go full speed" ] pub mod otg_fs_pwrclk { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_FS power and clock gating control register" ] pub fs_pcgcctl : FsPcgcctl , } # [ doc = "OTG_FS power and clock gating control register" ] pub struct FsPcgcctl { register : VolatileCell < u32 > } # [ doc = "OTG_FS power and clock gating control register" ] pub mod fs_pcgcctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: FsPcgcctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StppclkR { bits : u8 , } impl StppclkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GatehclkR { bits : u8 , } impl GatehclkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PhysuspR { bits : u8 , } impl PhysuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StppclkW < 'a > { w : & 'a mut W , } impl < 'a > _StppclkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GatehclkW < 'a > { w : & 'a mut W , } impl < 'a > _GatehclkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PhysuspW < 'a > { w : & 'a mut W , } impl < 'a > _PhysuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Stop PHY clock" ] # [ inline ( always ) ] pub fn stppclk ( & self ) -> StppclkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StppclkR { bits } } # [ doc = "Bit 1 - Gate HCLK" ] # [ inline ( always ) ] pub fn gatehclk ( & self ) -> GatehclkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GatehclkR { bits } } # [ doc = "Bit 4 - PHY Suspended" ] # [ inline ( always ) ] pub fn physusp ( & self ) -> PhysuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PhysuspR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Stop PHY clock" ] # [ inline ( always ) ] pub fn stppclk ( & mut self ) -> _StppclkW { _StppclkW { w : self } } # [ doc = "Bit 1 - Gate HCLK" ] # [ inline ( always ) ] pub fn gatehclk ( & mut self ) -> _GatehclkW { _GatehclkW { w : self } } # [ doc = "Bit 4 - PHY Suspended" ] # [ inline ( always ) ] pub fn physusp ( & mut self ) -> _PhysuspW { _PhysuspW { w : self } } } } } # [ doc = "USB on the go full speed" ] pub struct OtgFsPwrclk { register_block : otg_fs_pwrclk :: RegisterBlock } impl Deref for OtgFsPwrclk { type Target = otg_fs_pwrclk :: RegisterBlock ; fn deref ( & self ) -> & otg_fs_pwrclk :: RegisterBlock { & self . register_block } } # [ doc = "Controller area network" ] pub const CAN1 : Peripheral < Can1 > = unsafe { Peripheral :: new ( 1073767424 ) } ; # [ doc = "Controller area network" ] pub mod can1 { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - master control register" ] pub mcr : Mcr , # [ doc = "0x04 - master status register" ] pub msr : Msr , # [ doc = "0x08 - transmit status register" ] pub tsr : Tsr , # [ doc = "0x0c - receive FIFO 0 register" ] pub rf0r : Rf0r , # [ doc = "0x10 - receive FIFO 1 register" ] pub rf1r : Rf1r , # [ doc = "0x14 - interrupt enable register" ] pub ier : Ier , # [ doc = "0x18 - interrupt enable register" ] pub esr : Esr , # [ doc = "0x1c - bit timing register" ] pub btr : Btr , _reserved0 : [ u8 ; 352usize ] , # [ doc = "0x180 - TX mailbox identifier register" ] pub ti0r : Ti0r , # [ doc = "0x184 - mailbox data length control and time stamp register" ] pub tdt0r : Tdt0r , # [ doc = "0x188 - mailbox data low register" ] pub tdl0r : Tdl0r , # [ doc = "0x18c - mailbox data high register" ] pub tdh0r : Tdh0r , # [ doc = "0x190 - mailbox identifier register" ] pub ti1r : Ti1r , # [ doc = "0x194 - mailbox data length control and time stamp register" ] pub tdt1r : Tdt1r , # [ doc = "0x198 - mailbox data low register" ] pub tdl1r : Tdl1r , # [ doc = "0x19c - mailbox data high register" ] pub tdh1r : Tdh1r , # [ doc = "0x1a0 - mailbox identifier register" ] pub ti2r : Ti2r , # [ doc = "0x1a4 - mailbox data length control and time stamp register" ] pub tdt2r : Tdt2r , # [ doc = "0x1a8 - mailbox data low register" ] pub tdl2r : Tdl2r , # [ doc = "0x1ac - mailbox data high register" ] pub tdh2r : Tdh2r , # [ doc = "0x1b0 - receive FIFO mailbox identifier register" ] pub ri0r : Ri0r , # [ doc = "0x1b4 - mailbox data high register" ] pub rdt0r : Rdt0r , # [ doc = "0x1b8 - mailbox data high register" ] pub rdl0r : Rdl0r , # [ doc = "0x1bc - receive FIFO mailbox data high register" ] pub rdh0r : Rdh0r , # [ doc = "0x1c0 - mailbox data high register" ] pub ri1r : Ri1r , # [ doc = "0x1c4 - mailbox data high register" ] pub rdt1r : Rdt1r , # [ doc = "0x1c8 - mailbox data high register" ] pub rdl1r : Rdl1r , # [ doc = "0x1cc - mailbox data high register" ] pub rdh1r : Rdh1r , _reserved1 : [ u8 ; 48usize ] , # [ doc = "0x200 - filter master register" ] pub fmr : Fmr , # [ doc = "0x204 - filter mode register" ] pub fm1r : Fm1r , _reserved2 : [ u8 ; 4usize ] , # [ doc = "0x20c - filter scale register" ] pub fs1r : Fs1r , _reserved3 : [ u8 ; 4usize ] , # [ doc = "0x214 - filter FIFO assignment register" ] pub ffa1r : Ffa1r , _reserved4 : [ u8 ; 4usize ] , # [ doc = "0x21c - filter activation register" ] pub fa1r : Fa1r , _reserved5 : [ u8 ; 32usize ] , # [ doc = "0x240 - Filter bank 0 register 1" ] pub f0r1 : F0r1 , # [ doc = "0x244 - Filter bank 0 register 2" ] pub f0r2 : F0r2 , # [ doc = "0x248 - Filter bank 1 register 1" ] pub f1r1 : F1r1 , # [ doc = "0x24c - Filter bank 1 register 2" ] pub f1r2 : F1r2 , # [ doc = "0x250 - Filter bank 2 register 1" ] pub f2r1 : F2r1 , # [ doc = "0x254 - Filter bank 2 register 2" ] pub f2r2 : F2r2 , # [ doc = "0x258 - Filter bank 3 register 1" ] pub f3r1 : F3r1 , # [ doc = "0x25c - Filter bank 3 register 2" ] pub f3r2 : F3r2 , # [ doc = "0x260 - Filter bank 4 register 1" ] pub f4r1 : F4r1 , # [ doc = "0x264 - Filter bank 4 register 2" ] pub f4r2 : F4r2 , # [ doc = "0x268 - Filter bank 5 register 1" ] pub f5r1 : F5r1 , # [ doc = "0x26c - Filter bank 5 register 2" ] pub f5r2 : F5r2 , # [ doc = "0x270 - Filter bank 6 register 1" ] pub f6r1 : F6r1 , # [ doc = "0x274 - Filter bank 6 register 2" ] pub f6r2 : F6r2 , # [ doc = "0x278 - Filter bank 7 register 1" ] pub f7r1 : F7r1 , # [ doc = "0x27c - Filter bank 7 register 2" ] pub f7r2 : F7r2 , # [ doc = "0x280 - Filter bank 8 register 1" ] pub f8r1 : F8r1 , # [ doc = "0x284 - Filter bank 8 register 2" ] pub f8r2 : F8r2 , # [ doc = "0x288 - Filter bank 9 register 1" ] pub f9r1 : F9r1 , # [ doc = "0x28c - Filter bank 9 register 2" ] pub f9r2 : F9r2 , # [ doc = "0x290 - Filter bank 10 register 1" ] pub f10r1 : F10r1 , # [ doc = "0x294 - Filter bank 10 register 2" ] pub f10r2 : F10r2 , # [ doc = "0x298 - Filter bank 11 register 1" ] pub f11r1 : F11r1 , # [ doc = "0x29c - Filter bank 11 register 2" ] pub f11r2 : F11r2 , # [ doc = "0x2a0 - Filter bank 4 register 1" ] pub f12r1 : F12r1 , # [ doc = "0x2a4 - Filter bank 12 register 2" ] pub f12r2 : F12r2 , # [ doc = "0x2a8 - Filter bank 13 register 1" ] pub f13r1 : F13r1 , # [ doc = "0x2ac - Filter bank 13 register 2" ] pub f13r2 : F13r2 , # [ doc = "0x2b0 - Filter bank 14 register 1" ] pub f14r1 : F14r1 , # [ doc = "0x2b4 - Filter bank 14 register 2" ] pub f14r2 : F14r2 , # [ doc = "0x2b8 - Filter bank 15 register 1" ] pub f15r1 : F15r1 , # [ doc = "0x2bc - Filter bank 15 register 2" ] pub f15r2 : F15r2 , # [ doc = "0x2c0 - Filter bank 16 register 1" ] pub f16r1 : F16r1 , # [ doc = "0x2c4 - Filter bank 16 register 2" ] pub f16r2 : F16r2 , # [ doc = "0x2c8 - Filter bank 17 register 1" ] pub f17r1 : F17r1 , # [ doc = "0x2cc - Filter bank 17 register 2" ] pub f17r2 : F17r2 , # [ doc = "0x2d0 - Filter bank 18 register 1" ] pub f18r1 : F18r1 , # [ doc = "0x2d4 - Filter bank 18 register 2" ] pub f18r2 : F18r2 , # [ doc = "0x2d8 - Filter bank 19 register 1" ] pub f19r1 : F19r1 , # [ doc = "0x2dc - Filter bank 19 register 2" ] pub f19r2 : F19r2 , # [ doc = "0x2e0 - Filter bank 20 register 1" ] pub f20r1 : F20r1 , # [ doc = "0x2e4 - Filter bank 20 register 2" ] pub f20r2 : F20r2 , # [ doc = "0x2e8 - Filter bank 21 register 1" ] pub f21r1 : F21r1 , # [ doc = "0x2ec - Filter bank 21 register 2" ] pub f21r2 : F21r2 , # [ doc = "0x2f0 - Filter bank 22 register 1" ] pub f22r1 : F22r1 , # [ doc = "0x2f4 - Filter bank 22 register 2" ] pub f22r2 : F22r2 , # [ doc = "0x2f8 - Filter bank 23 register 1" ] pub f23r1 : F23r1 , # [ doc = "0x2fc - Filter bank 23 register 2" ] pub f23r2 : F23r2 , # [ doc = "0x300 - Filter bank 24 register 1" ] pub f24r1 : F24r1 , # [ doc = "0x304 - Filter bank 24 register 2" ] pub f24r2 : F24r2 , # [ doc = "0x308 - Filter bank 25 register 1" ] pub f25r1 : F25r1 , # [ doc = "0x30c - Filter bank 25 register 2" ] pub f25r2 : F25r2 , # [ doc = "0x310 - Filter bank 26 register 1" ] pub f26r1 : F26r1 , # [ doc = "0x314 - Filter bank 26 register 2" ] pub f26r2 : F26r2 , # [ doc = "0x318 - Filter bank 27 register 1" ] pub f27r1 : F27r1 , # [ doc = "0x31c - Filter bank 27 register 2" ] pub f27r2 : F27r2 , } # [ doc = "master control register" ] pub struct Mcr { register : VolatileCell < u32 > } # [ doc = "master control register" ] pub mod mcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Mcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DbfR { bits : u8 , } impl DbfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ResetR { bits : u8 , } impl ResetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TtcmR { bits : u8 , } impl TtcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AbomR { bits : u8 , } impl AbomR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AwumR { bits : u8 , } impl AwumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NartR { bits : u8 , } impl NartR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RflmR { bits : u8 , } impl RflmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfpR { bits : u8 , } impl TxfpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SleepR { bits : u8 , } impl SleepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InrqR { bits : u8 , } impl InrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DbfW < 'a > { w : & 'a mut W , } impl < 'a > _DbfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ResetW < 'a > { w : & 'a mut W , } impl < 'a > _ResetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TtcmW < 'a > { w : & 'a mut W , } impl < 'a > _TtcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AbomW < 'a > { w : & 'a mut W , } impl < 'a > _AbomW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AwumW < 'a > { w : & 'a mut W , } impl < 'a > _AwumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NartW < 'a > { w : & 'a mut W , } impl < 'a > _NartW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RflmW < 'a > { w : & 'a mut W , } impl < 'a > _RflmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfpW < 'a > { w : & 'a mut W , } impl < 'a > _TxfpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SleepW < 'a > { w : & 'a mut W , } impl < 'a > _SleepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InrqW < 'a > { w : & 'a mut W , } impl < 'a > _InrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - DBF" ] # [ inline ( always ) ] pub fn dbf ( & self ) -> DbfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbfR { bits } } # [ doc = "Bit 15 - RESET" ] # [ inline ( always ) ] pub fn reset ( & self ) -> ResetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ResetR { bits } } # [ doc = "Bit 7 - TTCM" ] # [ inline ( always ) ] pub fn ttcm ( & self ) -> TtcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TtcmR { bits } } # [ doc = "Bit 6 - ABOM" ] # [ inline ( always ) ] pub fn abom ( & self ) -> AbomR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AbomR { bits } } # [ doc = "Bit 5 - AWUM" ] # [ inline ( always ) ] pub fn awum ( & self ) -> AwumR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AwumR { bits } } # [ doc = "Bit 4 - NART" ] # [ inline ( always ) ] pub fn nart ( & self ) -> NartR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NartR { bits } } # [ doc = "Bit 3 - RFLM" ] # [ inline ( always ) ] pub fn rflm ( & self ) -> RflmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RflmR { bits } } # [ doc = "Bit 2 - TXFP" ] # [ inline ( always ) ] pub fn txfp ( & self ) -> TxfpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfpR { bits } } # [ doc = "Bit 1 - SLEEP" ] # [ inline ( always ) ] pub fn sleep ( & self ) -> SleepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SleepR { bits } } # [ doc = "Bit 0 - INRQ" ] # [ inline ( always ) ] pub fn inrq ( & self ) -> InrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InrqR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 65538 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - DBF" ] # [ inline ( always ) ] pub fn dbf ( & mut self ) -> _DbfW { _DbfW { w : self } } # [ doc = "Bit 15 - RESET" ] # [ inline ( always ) ] pub fn reset ( & mut self ) -> _ResetW { _ResetW { w : self } } # [ doc = "Bit 7 - TTCM" ] # [ inline ( always ) ] pub fn ttcm ( & mut self ) -> _TtcmW { _TtcmW { w : self } } # [ doc = "Bit 6 - ABOM" ] # [ inline ( always ) ] pub fn abom ( & mut self ) -> _AbomW { _AbomW { w : self } } # [ doc = "Bit 5 - AWUM" ] # [ inline ( always ) ] pub fn awum ( & mut self ) -> _AwumW { _AwumW { w : self } } # [ doc = "Bit 4 - NART" ] # [ inline ( always ) ] pub fn nart ( & mut self ) -> _NartW { _NartW { w : self } } # [ doc = "Bit 3 - RFLM" ] # [ inline ( always ) ] pub fn rflm ( & mut self ) -> _RflmW { _RflmW { w : self } } # [ doc = "Bit 2 - TXFP" ] # [ inline ( always ) ] pub fn txfp ( & mut self ) -> _TxfpW { _TxfpW { w : self } } # [ doc = "Bit 1 - SLEEP" ] # [ inline ( always ) ] pub fn sleep ( & mut self ) -> _SleepW { _SleepW { w : self } } # [ doc = "Bit 0 - INRQ" ] # [ inline ( always ) ] pub fn inrq ( & mut self ) -> _InrqW { _InrqW { w : self } } } } # [ doc = "master status register" ] pub struct Msr { register : VolatileCell < u32 > } # [ doc = "master status register" ] pub mod msr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Msr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxR { bits : u8 , } impl RxR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SampR { bits : u8 , } impl SampR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxmR { bits : u8 , } impl RxmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxmR { bits : u8 , } impl TxmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SlakiR { bits : u8 , } impl SlakiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WkuiR { bits : u8 , } impl WkuiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErriR { bits : u8 , } impl ErriR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SlakR { bits : u8 , } impl SlakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InakR { bits : u8 , } impl InakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SlakiW < 'a > { w : & 'a mut W , } impl < 'a > _SlakiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WkuiW < 'a > { w : & 'a mut W , } impl < 'a > _WkuiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErriW < 'a > { w : & 'a mut W , } impl < 'a > _ErriW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 11 - RX" ] # [ inline ( always ) ] pub fn rx ( & self ) -> RxR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxR { bits } } # [ doc = "Bit 10 - SAMP" ] # [ inline ( always ) ] pub fn samp ( & self ) -> SampR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SampR { bits } } # [ doc = "Bit 9 - RXM" ] # [ inline ( always ) ] pub fn rxm ( & self ) -> RxmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxmR { bits } } # [ doc = "Bit 8 - TXM" ] # [ inline ( always ) ] pub fn txm ( & self ) -> TxmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxmR { bits } } # [ doc = "Bit 4 - SLAKI" ] # [ inline ( always ) ] pub fn slaki ( & self ) -> SlakiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SlakiR { bits } } # [ doc = "Bit 3 - WKUI" ] # [ inline ( always ) ] pub fn wkui ( & self ) -> WkuiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WkuiR { bits } } # [ doc = "Bit 2 - ERRI" ] # [ inline ( always ) ] pub fn erri ( & self ) -> ErriR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErriR { bits } } # [ doc = "Bit 1 - SLAK" ] # [ inline ( always ) ] pub fn slak ( & self ) -> SlakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SlakR { bits } } # [ doc = "Bit 0 - INAK" ] # [ inline ( always ) ] pub fn inak ( & self ) -> InakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 3074 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 4 - SLAKI" ] # [ inline ( always ) ] pub fn slaki ( & mut self ) -> _SlakiW { _SlakiW { w : self } } # [ doc = "Bit 3 - WKUI" ] # [ inline ( always ) ] pub fn wkui ( & mut self ) -> _WkuiW { _WkuiW { w : self } } # [ doc = "Bit 2 - ERRI" ] # [ inline ( always ) ] pub fn erri ( & mut self ) -> _ErriW { _ErriW { w : self } } } } # [ doc = "transmit status register" ] pub struct Tsr { register : VolatileCell < u32 > } # [ doc = "transmit status register" ] pub mod tsr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tsr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Low2R { bits : u8 , } impl Low2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Low1R { bits : u8 , } impl Low1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Low0R { bits : u8 , } impl Low0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tme2R { bits : u8 , } impl Tme2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tme1R { bits : u8 , } impl Tme1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tme0R { bits : u8 , } impl Tme0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CodeR { bits : u8 , } impl CodeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Abrq2R { bits : u8 , } impl Abrq2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Terr2R { bits : u8 , } impl Terr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Alst2R { bits : u8 , } impl Alst2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Txok2R { bits : u8 , } impl Txok2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Rqcp2R { bits : u8 , } impl Rqcp2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Abrq1R { bits : u8 , } impl Abrq1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Terr1R { bits : u8 , } impl Terr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Alst1R { bits : u8 , } impl Alst1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Txok1R { bits : u8 , } impl Txok1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Rqcp1R { bits : u8 , } impl Rqcp1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Abrq0R { bits : u8 , } impl Abrq0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Terr0R { bits : u8 , } impl Terr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Alst0R { bits : u8 , } impl Alst0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Txok0R { bits : u8 , } impl Txok0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Rqcp0R { bits : u8 , } impl Rqcp0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Abrq2W < 'a > { w : & 'a mut W , } impl < 'a > _Abrq2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Terr2W < 'a > { w : & 'a mut W , } impl < 'a > _Terr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Alst2W < 'a > { w : & 'a mut W , } impl < 'a > _Alst2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Txok2W < 'a > { w : & 'a mut W , } impl < 'a > _Txok2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Rqcp2W < 'a > { w : & 'a mut W , } impl < 'a > _Rqcp2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Abrq1W < 'a > { w : & 'a mut W , } impl < 'a > _Abrq1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Terr1W < 'a > { w : & 'a mut W , } impl < 'a > _Terr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Alst1W < 'a > { w : & 'a mut W , } impl < 'a > _Alst1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Txok1W < 'a > { w : & 'a mut W , } impl < 'a > _Txok1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Rqcp1W < 'a > { w : & 'a mut W , } impl < 'a > _Rqcp1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Abrq0W < 'a > { w : & 'a mut W , } impl < 'a > _Abrq0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Terr0W < 'a > { w : & 'a mut W , } impl < 'a > _Terr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Alst0W < 'a > { w : & 'a mut W , } impl < 'a > _Alst0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Txok0W < 'a > { w : & 'a mut W , } impl < 'a > _Txok0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Rqcp0W < 'a > { w : & 'a mut W , } impl < 'a > _Rqcp0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - Lowest priority flag for mailbox 2" ] # [ inline ( always ) ] pub fn low2 ( & self ) -> Low2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Low2R { bits } } # [ doc = "Bit 30 - Lowest priority flag for mailbox 1" ] # [ inline ( always ) ] pub fn low1 ( & self ) -> Low1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Low1R { bits } } # [ doc = "Bit 29 - Lowest priority flag for mailbox 0" ] # [ inline ( always ) ] pub fn low0 ( & self ) -> Low0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Low0R { bits } } # [ doc = "Bit 28 - Lowest priority flag for mailbox 2" ] # [ inline ( always ) ] pub fn tme2 ( & self ) -> Tme2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tme2R { bits } } # [ doc = "Bit 27 - Lowest priority flag for mailbox 1" ] # [ inline ( always ) ] pub fn tme1 ( & self ) -> Tme1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tme1R { bits } } # [ doc = "Bit 26 - Lowest priority flag for mailbox 0" ] # [ inline ( always ) ] pub fn tme0 ( & self ) -> Tme0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tme0R { bits } } # [ doc = "Bits 24:25 - CODE" ] # [ inline ( always ) ] pub fn code ( & self ) -> CodeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CodeR { bits } } # [ doc = "Bit 23 - ABRQ2" ] # [ inline ( always ) ] pub fn abrq2 ( & self ) -> Abrq2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Abrq2R { bits } } # [ doc = "Bit 19 - TERR2" ] # [ inline ( always ) ] pub fn terr2 ( & self ) -> Terr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Terr2R { bits } } # [ doc = "Bit 18 - ALST2" ] # [ inline ( always ) ] pub fn alst2 ( & self ) -> Alst2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Alst2R { bits } } # [ doc = "Bit 17 - TXOK2" ] # [ inline ( always ) ] pub fn txok2 ( & self ) -> Txok2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Txok2R { bits } } # [ doc = "Bit 16 - RQCP2" ] # [ inline ( always ) ] pub fn rqcp2 ( & self ) -> Rqcp2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rqcp2R { bits } } # [ doc = "Bit 15 - ABRQ1" ] # [ inline ( always ) ] pub fn abrq1 ( & self ) -> Abrq1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Abrq1R { bits } } # [ doc = "Bit 11 - TERR1" ] # [ inline ( always ) ] pub fn terr1 ( & self ) -> Terr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Terr1R { bits } } # [ doc = "Bit 10 - ALST1" ] # [ inline ( always ) ] pub fn alst1 ( & self ) -> Alst1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Alst1R { bits } } # [ doc = "Bit 9 - TXOK1" ] # [ inline ( always ) ] pub fn txok1 ( & self ) -> Txok1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Txok1R { bits } } # [ doc = "Bit 8 - RQCP1" ] # [ inline ( always ) ] pub fn rqcp1 ( & self ) -> Rqcp1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rqcp1R { bits } } # [ doc = "Bit 7 - ABRQ0" ] # [ inline ( always ) ] pub fn abrq0 ( & self ) -> Abrq0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Abrq0R { bits } } # [ doc = "Bit 3 - TERR0" ] # [ inline ( always ) ] pub fn terr0 ( & self ) -> Terr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Terr0R { bits } } # [ doc = "Bit 2 - ALST0" ] # [ inline ( always ) ] pub fn alst0 ( & self ) -> Alst0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Alst0R { bits } } # [ doc = "Bit 1 - TXOK0" ] # [ inline ( always ) ] pub fn txok0 ( & self ) -> Txok0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Txok0R { bits } } # [ doc = "Bit 0 - RQCP0" ] # [ inline ( always ) ] pub fn rqcp0 ( & self ) -> Rqcp0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rqcp0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 469762048 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 23 - ABRQ2" ] # [ inline ( always ) ] pub fn abrq2 ( & mut self ) -> _Abrq2W { _Abrq2W { w : self } } # [ doc = "Bit 19 - TERR2" ] # [ inline ( always ) ] pub fn terr2 ( & mut self ) -> _Terr2W { _Terr2W { w : self } } # [ doc = "Bit 18 - ALST2" ] # [ inline ( always ) ] pub fn alst2 ( & mut self ) -> _Alst2W { _Alst2W { w : self } } # [ doc = "Bit 17 - TXOK2" ] # [ inline ( always ) ] pub fn txok2 ( & mut self ) -> _Txok2W { _Txok2W { w : self } } # [ doc = "Bit 16 - RQCP2" ] # [ inline ( always ) ] pub fn rqcp2 ( & mut self ) -> _Rqcp2W { _Rqcp2W { w : self } } # [ doc = "Bit 15 - ABRQ1" ] # [ inline ( always ) ] pub fn abrq1 ( & mut self ) -> _Abrq1W { _Abrq1W { w : self } } # [ doc = "Bit 11 - TERR1" ] # [ inline ( always ) ] pub fn terr1 ( & mut self ) -> _Terr1W { _Terr1W { w : self } } # [ doc = "Bit 10 - ALST1" ] # [ inline ( always ) ] pub fn alst1 ( & mut self ) -> _Alst1W { _Alst1W { w : self } } # [ doc = "Bit 9 - TXOK1" ] # [ inline ( always ) ] pub fn txok1 ( & mut self ) -> _Txok1W { _Txok1W { w : self } } # [ doc = "Bit 8 - RQCP1" ] # [ inline ( always ) ] pub fn rqcp1 ( & mut self ) -> _Rqcp1W { _Rqcp1W { w : self } } # [ doc = "Bit 7 - ABRQ0" ] # [ inline ( always ) ] pub fn abrq0 ( & mut self ) -> _Abrq0W { _Abrq0W { w : self } } # [ doc = "Bit 3 - TERR0" ] # [ inline ( always ) ] pub fn terr0 ( & mut self ) -> _Terr0W { _Terr0W { w : self } } # [ doc = "Bit 2 - ALST0" ] # [ inline ( always ) ] pub fn alst0 ( & mut self ) -> _Alst0W { _Alst0W { w : self } } # [ doc = "Bit 1 - TXOK0" ] # [ inline ( always ) ] pub fn txok0 ( & mut self ) -> _Txok0W { _Txok0W { w : self } } # [ doc = "Bit 0 - RQCP0" ] # [ inline ( always ) ] pub fn rqcp0 ( & mut self ) -> _Rqcp0W { _Rqcp0W { w : self } } } } # [ doc = "receive FIFO 0 register" ] pub struct Rf0r { register : VolatileCell < u32 > } # [ doc = "receive FIFO 0 register" ] pub mod rf0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Rf0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Rfom0R { bits : u8 , } impl Rfom0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fovr0R { bits : u8 , } impl Fovr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Full0R { bits : u8 , } impl Full0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fmp0R { bits : u8 , } impl Fmp0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Rfom0W < 'a > { w : & 'a mut W , } impl < 'a > _Rfom0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fovr0W < 'a > { w : & 'a mut W , } impl < 'a > _Fovr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Full0W < 'a > { w : & 'a mut W , } impl < 'a > _Full0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 5 - RFOM0" ] # [ inline ( always ) ] pub fn rfom0 ( & self ) -> Rfom0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rfom0R { bits } } # [ doc = "Bit 4 - FOVR0" ] # [ inline ( always ) ] pub fn fovr0 ( & self ) -> Fovr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fovr0R { bits } } # [ doc = "Bit 3 - FULL0" ] # [ inline ( always ) ] pub fn full0 ( & self ) -> Full0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Full0R { bits } } # [ doc = "Bits 0:1 - FMP0" ] # [ inline ( always ) ] pub fn fmp0 ( & self ) -> Fmp0R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fmp0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - RFOM0" ] # [ inline ( always ) ] pub fn rfom0 ( & mut self ) -> _Rfom0W { _Rfom0W { w : self } } # [ doc = "Bit 4 - FOVR0" ] # [ inline ( always ) ] pub fn fovr0 ( & mut self ) -> _Fovr0W { _Fovr0W { w : self } } # [ doc = "Bit 3 - FULL0" ] # [ inline ( always ) ] pub fn full0 ( & mut self ) -> _Full0W { _Full0W { w : self } } } } # [ doc = "receive FIFO 1 register" ] pub struct Rf1r { register : VolatileCell < u32 > } # [ doc = "receive FIFO 1 register" ] pub mod rf1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Rf1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Rfom1R { bits : u8 , } impl Rfom1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fovr1R { bits : u8 , } impl Fovr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Full1R { bits : u8 , } impl Full1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fmp1R { bits : u8 , } impl Fmp1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Rfom1W < 'a > { w : & 'a mut W , } impl < 'a > _Rfom1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fovr1W < 'a > { w : & 'a mut W , } impl < 'a > _Fovr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Full1W < 'a > { w : & 'a mut W , } impl < 'a > _Full1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 5 - RFOM1" ] # [ inline ( always ) ] pub fn rfom1 ( & self ) -> Rfom1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Rfom1R { bits } } # [ doc = "Bit 4 - FOVR1" ] # [ inline ( always ) ] pub fn fovr1 ( & self ) -> Fovr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fovr1R { bits } } # [ doc = "Bit 3 - FULL1" ] # [ inline ( always ) ] pub fn full1 ( & self ) -> Full1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Full1R { bits } } # [ doc = "Bits 0:1 - FMP1" ] # [ inline ( always ) ] pub fn fmp1 ( & self ) -> Fmp1R { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fmp1R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 5 - RFOM1" ] # [ inline ( always ) ] pub fn rfom1 ( & mut self ) -> _Rfom1W { _Rfom1W { w : self } } # [ doc = "Bit 4 - FOVR1" ] # [ inline ( always ) ] pub fn fovr1 ( & mut self ) -> _Fovr1W { _Fovr1W { w : self } } # [ doc = "Bit 3 - FULL1" ] # [ inline ( always ) ] pub fn full1 ( & mut self ) -> _Full1W { _Full1W { w : self } } } } # [ doc = "interrupt enable register" ] pub struct Ier { register : VolatileCell < u32 > } # [ doc = "interrupt enable register" ] pub mod ier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SlkieR { bits : u8 , } impl SlkieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WkuieR { bits : u8 , } impl WkuieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrieR { bits : u8 , } impl ErrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LecieR { bits : u8 , } impl LecieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BofieR { bits : u8 , } impl BofieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpvieR { bits : u8 , } impl EpvieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EwgieR { bits : u8 , } impl EwgieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fovie1R { bits : u8 , } impl Fovie1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffie1R { bits : u8 , } impl Ffie1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fmpie1R { bits : u8 , } impl Fmpie1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fovie0R { bits : u8 , } impl Fovie0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffie0R { bits : u8 , } impl Ffie0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fmpie0R { bits : u8 , } impl Fmpie0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TmeieR { bits : u8 , } impl TmeieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SlkieW < 'a > { w : & 'a mut W , } impl < 'a > _SlkieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WkuieW < 'a > { w : & 'a mut W , } impl < 'a > _WkuieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErrieW < 'a > { w : & 'a mut W , } impl < 'a > _ErrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LecieW < 'a > { w : & 'a mut W , } impl < 'a > _LecieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BofieW < 'a > { w : & 'a mut W , } impl < 'a > _BofieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpvieW < 'a > { w : & 'a mut W , } impl < 'a > _EpvieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EwgieW < 'a > { w : & 'a mut W , } impl < 'a > _EwgieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fovie1W < 'a > { w : & 'a mut W , } impl < 'a > _Fovie1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffie1W < 'a > { w : & 'a mut W , } impl < 'a > _Ffie1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fmpie1W < 'a > { w : & 'a mut W , } impl < 'a > _Fmpie1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fovie0W < 'a > { w : & 'a mut W , } impl < 'a > _Fovie0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffie0W < 'a > { w : & 'a mut W , } impl < 'a > _Ffie0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fmpie0W < 'a > { w : & 'a mut W , } impl < 'a > _Fmpie0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TmeieW < 'a > { w : & 'a mut W , } impl < 'a > _TmeieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 17 - SLKIE" ] # [ inline ( always ) ] pub fn slkie ( & self ) -> SlkieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SlkieR { bits } } # [ doc = "Bit 16 - WKUIE" ] # [ inline ( always ) ] pub fn wkuie ( & self ) -> WkuieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WkuieR { bits } } # [ doc = "Bit 15 - ERRIE" ] # [ inline ( always ) ] pub fn errie ( & self ) -> ErrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrieR { bits } } # [ doc = "Bit 11 - LECIE" ] # [ inline ( always ) ] pub fn lecie ( & self ) -> LecieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LecieR { bits } } # [ doc = "Bit 10 - BOFIE" ] # [ inline ( always ) ] pub fn bofie ( & self ) -> BofieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BofieR { bits } } # [ doc = "Bit 9 - EPVIE" ] # [ inline ( always ) ] pub fn epvie ( & self ) -> EpvieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpvieR { bits } } # [ doc = "Bit 8 - EWGIE" ] # [ inline ( always ) ] pub fn ewgie ( & self ) -> EwgieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EwgieR { bits } } # [ doc = "Bit 6 - FOVIE1" ] # [ inline ( always ) ] pub fn fovie1 ( & self ) -> Fovie1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fovie1R { bits } } # [ doc = "Bit 5 - FFIE1" ] # [ inline ( always ) ] pub fn ffie1 ( & self ) -> Ffie1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffie1R { bits } } # [ doc = "Bit 4 - FMPIE1" ] # [ inline ( always ) ] pub fn fmpie1 ( & self ) -> Fmpie1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fmpie1R { bits } } # [ doc = "Bit 3 - FOVIE0" ] # [ inline ( always ) ] pub fn fovie0 ( & self ) -> Fovie0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fovie0R { bits } } # [ doc = "Bit 2 - FFIE0" ] # [ inline ( always ) ] pub fn ffie0 ( & self ) -> Ffie0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffie0R { bits } } # [ doc = "Bit 1 - FMPIE0" ] # [ inline ( always ) ] pub fn fmpie0 ( & self ) -> Fmpie0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fmpie0R { bits } } # [ doc = "Bit 0 - TMEIE" ] # [ inline ( always ) ] pub fn tmeie ( & self ) -> TmeieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TmeieR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 17 - SLKIE" ] # [ inline ( always ) ] pub fn slkie ( & mut self ) -> _SlkieW { _SlkieW { w : self } } # [ doc = "Bit 16 - WKUIE" ] # [ inline ( always ) ] pub fn wkuie ( & mut self ) -> _WkuieW { _WkuieW { w : self } } # [ doc = "Bit 15 - ERRIE" ] # [ inline ( always ) ] pub fn errie ( & mut self ) -> _ErrieW { _ErrieW { w : self } } # [ doc = "Bit 11 - LECIE" ] # [ inline ( always ) ] pub fn lecie ( & mut self ) -> _LecieW { _LecieW { w : self } } # [ doc = "Bit 10 - BOFIE" ] # [ inline ( always ) ] pub fn bofie ( & mut self ) -> _BofieW { _BofieW { w : self } } # [ doc = "Bit 9 - EPVIE" ] # [ inline ( always ) ] pub fn epvie ( & mut self ) -> _EpvieW { _EpvieW { w : self } } # [ doc = "Bit 8 - EWGIE" ] # [ inline ( always ) ] pub fn ewgie ( & mut self ) -> _EwgieW { _EwgieW { w : self } } # [ doc = "Bit 6 - FOVIE1" ] # [ inline ( always ) ] pub fn fovie1 ( & mut self ) -> _Fovie1W { _Fovie1W { w : self } } # [ doc = "Bit 5 - FFIE1" ] # [ inline ( always ) ] pub fn ffie1 ( & mut self ) -> _Ffie1W { _Ffie1W { w : self } } # [ doc = "Bit 4 - FMPIE1" ] # [ inline ( always ) ] pub fn fmpie1 ( & mut self ) -> _Fmpie1W { _Fmpie1W { w : self } } # [ doc = "Bit 3 - FOVIE0" ] # [ inline ( always ) ] pub fn fovie0 ( & mut self ) -> _Fovie0W { _Fovie0W { w : self } } # [ doc = "Bit 2 - FFIE0" ] # [ inline ( always ) ] pub fn ffie0 ( & mut self ) -> _Ffie0W { _Ffie0W { w : self } } # [ doc = "Bit 1 - FMPIE0" ] # [ inline ( always ) ] pub fn fmpie0 ( & mut self ) -> _Fmpie0W { _Fmpie0W { w : self } } # [ doc = "Bit 0 - TMEIE" ] # [ inline ( always ) ] pub fn tmeie ( & mut self ) -> _TmeieW { _TmeieW { w : self } } } } # [ doc = "interrupt enable register" ] pub struct Esr { register : VolatileCell < u32 > } # [ doc = "interrupt enable register" ] pub mod esr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Esr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RecR { bits : u8 , } impl RecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TecR { bits : u8 , } impl TecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LecR { bits : u8 , } impl LecR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BoffR { bits : u8 , } impl BoffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpvfR { bits : u8 , } impl EpvfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EwgfR { bits : u8 , } impl EwgfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LecW < 'a > { w : & 'a mut W , } impl < 'a > _LecW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - REC" ] # [ inline ( always ) ] pub fn rec ( & self ) -> RecR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RecR { bits } } # [ doc = "Bits 16:23 - TEC" ] # [ inline ( always ) ] pub fn tec ( & self ) -> TecR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TecR { bits } } # [ doc = "Bits 4:6 - LEC" ] # [ inline ( always ) ] pub fn lec ( & self ) -> LecR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LecR { bits } } # [ doc = "Bit 2 - BOFF" ] # [ inline ( always ) ] pub fn boff ( & self ) -> BoffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BoffR { bits } } # [ doc = "Bit 1 - EPVF" ] # [ inline ( always ) ] pub fn epvf ( & self ) -> EpvfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpvfR { bits } } # [ doc = "Bit 0 - EWGF" ] # [ inline ( always ) ] pub fn ewgf ( & self ) -> EwgfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EwgfR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 4:6 - LEC" ] # [ inline ( always ) ] pub fn lec ( & mut self ) -> _LecW { _LecW { w : self } } } } # [ doc = "bit timing register" ] pub struct Btr { register : VolatileCell < u32 > } # [ doc = "bit timing register" ] pub mod btr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Btr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SilmR { bits : u8 , } impl SilmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LbkmR { bits : u8 , } impl LbkmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SjwR { bits : u8 , } impl SjwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ts2R { bits : u8 , } impl Ts2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ts1R { bits : u8 , } impl Ts1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BrpR { bits : u16 , } impl BrpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _SilmW < 'a > { w : & 'a mut W , } impl < 'a > _SilmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LbkmW < 'a > { w : & 'a mut W , } impl < 'a > _LbkmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SjwW < 'a > { w : & 'a mut W , } impl < 'a > _SjwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ts2W < 'a > { w : & 'a mut W , } impl < 'a > _Ts2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ts1W < 'a > { w : & 'a mut W , } impl < 'a > _Ts1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BrpW < 'a > { w : & 'a mut W , } impl < 'a > _BrpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 31 - SILM" ] # [ inline ( always ) ] pub fn silm ( & self ) -> SilmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SilmR { bits } } # [ doc = "Bit 30 - LBKM" ] # [ inline ( always ) ] pub fn lbkm ( & self ) -> LbkmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LbkmR { bits } } # [ doc = "Bits 24:25 - SJW" ] # [ inline ( always ) ] pub fn sjw ( & self ) -> SjwR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SjwR { bits } } # [ doc = "Bits 20:22 - TS2" ] # [ inline ( always ) ] pub fn ts2 ( & self ) -> Ts2R { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ts2R { bits } } # [ doc = "Bits 16:19 - TS1" ] # [ inline ( always ) ] pub fn ts1 ( & self ) -> Ts1R { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ts1R { bits } } # [ doc = "Bits 0:9 - BRP" ] # [ inline ( always ) ] pub fn brp ( & self ) -> BrpR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BrpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 31 - SILM" ] # [ inline ( always ) ] pub fn silm ( & mut self ) -> _SilmW { _SilmW { w : self } } # [ doc = "Bit 30 - LBKM" ] # [ inline ( always ) ] pub fn lbkm ( & mut self ) -> _LbkmW { _LbkmW { w : self } } # [ doc = "Bits 24:25 - SJW" ] # [ inline ( always ) ] pub fn sjw ( & mut self ) -> _SjwW { _SjwW { w : self } } # [ doc = "Bits 20:22 - TS2" ] # [ inline ( always ) ] pub fn ts2 ( & mut self ) -> _Ts2W { _Ts2W { w : self } } # [ doc = "Bits 16:19 - TS1" ] # [ inline ( always ) ] pub fn ts1 ( & mut self ) -> _Ts1W { _Ts1W { w : self } } # [ doc = "Bits 0:9 - BRP" ] # [ inline ( always ) ] pub fn brp ( & mut self ) -> _BrpW { _BrpW { w : self } } } } # [ doc = "TX mailbox identifier register" ] pub struct Ti0r { register : VolatileCell < u32 > } # [ doc = "TX mailbox identifier register" ] pub mod ti0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ti0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StidR { bits : u16 , } impl StidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExidR { bits : u32 , } impl ExidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdeR { bits : u8 , } impl IdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtrR { bits : u8 , } impl RtrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxrqR { bits : u8 , } impl TxrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StidW < 'a > { w : & 'a mut W , } impl < 'a > _StidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExidW < 'a > { w : & 'a mut W , } impl < 'a > _ExidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IdeW < 'a > { w : & 'a mut W , } impl < 'a > _IdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtrW < 'a > { w : & 'a mut W , } impl < 'a > _RtrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxrqW < 'a > { w : & 'a mut W , } impl < 'a > _TxrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & self ) -> StidR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; StidR { bits } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & self ) -> ExidR { let bits = { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ExidR { bits } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & self ) -> IdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdeR { bits } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & self ) -> RtrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtrR { bits } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & self ) -> TxrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxrqR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & mut self ) -> _StidW { _StidW { w : self } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & mut self ) -> _ExidW { _ExidW { w : self } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & mut self ) -> _IdeW { _IdeW { w : self } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & mut self ) -> _RtrW { _RtrW { w : self } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & mut self ) -> _TxrqW { _TxrqW { w : self } } } } # [ doc = "mailbox data length control and time stamp register" ] pub struct Tdt0r { register : VolatileCell < u32 > } # [ doc = "mailbox data length control and time stamp register" ] pub mod tdt0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdt0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TimeR { bits : u16 , } impl TimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgtR { bits : u8 , } impl TgtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DlcR { bits : u8 , } impl DlcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TimeW < 'a > { w : & 'a mut W , } impl < 'a > _TimeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgtW < 'a > { w : & 'a mut W , } impl < 'a > _TgtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DlcW < 'a > { w : & 'a mut W , } impl < 'a > _DlcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & self ) -> TimeR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TimeR { bits } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & self ) -> TgtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgtR { bits } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & self ) -> DlcR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DlcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & mut self ) -> _TimeW { _TimeW { w : self } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & mut self ) -> _TgtW { _TgtW { w : self } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & mut self ) -> _DlcW { _DlcW { w : self } } } } # [ doc = "mailbox data low register" ] pub struct Tdl0r { register : VolatileCell < u32 > } # [ doc = "mailbox data low register" ] pub mod tdl0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdl0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data3R { bits : u8 , } impl Data3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u8 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u8 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data0R { bits : u8 , } impl Data0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data3W < 'a > { w : & 'a mut W , } impl < 'a > _Data3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data2W < 'a > { w : & 'a mut W , } impl < 'a > _Data2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data1W < 'a > { w : & 'a mut W , } impl < 'a > _Data1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data0W < 'a > { w : & 'a mut W , } impl < 'a > _Data0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & self ) -> Data3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data3R { bits } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data2R { bits } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data1R { bits } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & self ) -> Data0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & mut self ) -> _Data3W { _Data3W { w : self } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & mut self ) -> _Data2W { _Data2W { w : self } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & mut self ) -> _Data1W { _Data1W { w : self } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & mut self ) -> _Data0W { _Data0W { w : self } } } } # [ doc = "mailbox data high register" ] pub struct Tdh0r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod tdh0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdh0r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data7R { bits : u8 , } impl Data7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data6R { bits : u8 , } impl Data6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data5R { bits : u8 , } impl Data5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data4R { bits : u8 , } impl Data4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data7W < 'a > { w : & 'a mut W , } impl < 'a > _Data7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data6W < 'a > { w : & 'a mut W , } impl < 'a > _Data6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data5W < 'a > { w : & 'a mut W , } impl < 'a > _Data5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data4W < 'a > { w : & 'a mut W , } impl < 'a > _Data4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & self ) -> Data7R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data7R { bits } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & self ) -> Data6R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data6R { bits } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & self ) -> Data5R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data5R { bits } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & self ) -> Data4R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & mut self ) -> _Data7W { _Data7W { w : self } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & mut self ) -> _Data6W { _Data6W { w : self } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & mut self ) -> _Data5W { _Data5W { w : self } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & mut self ) -> _Data4W { _Data4W { w : self } } } } # [ doc = "mailbox identifier register" ] pub struct Ti1r { register : VolatileCell < u32 > } # [ doc = "mailbox identifier register" ] pub mod ti1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ti1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StidR { bits : u16 , } impl StidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExidR { bits : u32 , } impl ExidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdeR { bits : u8 , } impl IdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtrR { bits : u8 , } impl RtrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxrqR { bits : u8 , } impl TxrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StidW < 'a > { w : & 'a mut W , } impl < 'a > _StidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExidW < 'a > { w : & 'a mut W , } impl < 'a > _ExidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IdeW < 'a > { w : & 'a mut W , } impl < 'a > _IdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtrW < 'a > { w : & 'a mut W , } impl < 'a > _RtrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxrqW < 'a > { w : & 'a mut W , } impl < 'a > _TxrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & self ) -> StidR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; StidR { bits } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & self ) -> ExidR { let bits = { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ExidR { bits } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & self ) -> IdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdeR { bits } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & self ) -> RtrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtrR { bits } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & self ) -> TxrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxrqR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & mut self ) -> _StidW { _StidW { w : self } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & mut self ) -> _ExidW { _ExidW { w : self } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & mut self ) -> _IdeW { _IdeW { w : self } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & mut self ) -> _RtrW { _RtrW { w : self } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & mut self ) -> _TxrqW { _TxrqW { w : self } } } } # [ doc = "mailbox data length control and time stamp register" ] pub struct Tdt1r { register : VolatileCell < u32 > } # [ doc = "mailbox data length control and time stamp register" ] pub mod tdt1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdt1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TimeR { bits : u16 , } impl TimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgtR { bits : u8 , } impl TgtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DlcR { bits : u8 , } impl DlcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TimeW < 'a > { w : & 'a mut W , } impl < 'a > _TimeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgtW < 'a > { w : & 'a mut W , } impl < 'a > _TgtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DlcW < 'a > { w : & 'a mut W , } impl < 'a > _DlcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & self ) -> TimeR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TimeR { bits } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & self ) -> TgtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgtR { bits } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & self ) -> DlcR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DlcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & mut self ) -> _TimeW { _TimeW { w : self } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & mut self ) -> _TgtW { _TgtW { w : self } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & mut self ) -> _DlcW { _DlcW { w : self } } } } # [ doc = "mailbox data low register" ] pub struct Tdl1r { register : VolatileCell < u32 > } # [ doc = "mailbox data low register" ] pub mod tdl1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdl1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data3R { bits : u8 , } impl Data3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u8 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u8 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data0R { bits : u8 , } impl Data0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data3W < 'a > { w : & 'a mut W , } impl < 'a > _Data3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data2W < 'a > { w : & 'a mut W , } impl < 'a > _Data2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data1W < 'a > { w : & 'a mut W , } impl < 'a > _Data1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data0W < 'a > { w : & 'a mut W , } impl < 'a > _Data0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & self ) -> Data3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data3R { bits } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data2R { bits } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data1R { bits } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & self ) -> Data0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & mut self ) -> _Data3W { _Data3W { w : self } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & mut self ) -> _Data2W { _Data2W { w : self } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & mut self ) -> _Data1W { _Data1W { w : self } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & mut self ) -> _Data0W { _Data0W { w : self } } } } # [ doc = "mailbox data high register" ] pub struct Tdh1r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod tdh1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdh1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data7R { bits : u8 , } impl Data7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data6R { bits : u8 , } impl Data6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data5R { bits : u8 , } impl Data5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data4R { bits : u8 , } impl Data4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data7W < 'a > { w : & 'a mut W , } impl < 'a > _Data7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data6W < 'a > { w : & 'a mut W , } impl < 'a > _Data6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data5W < 'a > { w : & 'a mut W , } impl < 'a > _Data5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data4W < 'a > { w : & 'a mut W , } impl < 'a > _Data4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & self ) -> Data7R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data7R { bits } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & self ) -> Data6R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data6R { bits } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & self ) -> Data5R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data5R { bits } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & self ) -> Data4R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & mut self ) -> _Data7W { _Data7W { w : self } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & mut self ) -> _Data6W { _Data6W { w : self } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & mut self ) -> _Data5W { _Data5W { w : self } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & mut self ) -> _Data4W { _Data4W { w : self } } } } # [ doc = "mailbox identifier register" ] pub struct Ti2r { register : VolatileCell < u32 > } # [ doc = "mailbox identifier register" ] pub mod ti2r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ti2r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StidR { bits : u16 , } impl StidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExidR { bits : u32 , } impl ExidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdeR { bits : u8 , } impl IdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtrR { bits : u8 , } impl RtrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxrqR { bits : u8 , } impl TxrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StidW < 'a > { w : & 'a mut W , } impl < 'a > _StidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ExidW < 'a > { w : & 'a mut W , } impl < 'a > _ExidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IdeW < 'a > { w : & 'a mut W , } impl < 'a > _IdeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RtrW < 'a > { w : & 'a mut W , } impl < 'a > _RtrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxrqW < 'a > { w : & 'a mut W , } impl < 'a > _TxrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & self ) -> StidR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; StidR { bits } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & self ) -> ExidR { let bits = { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ExidR { bits } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & self ) -> IdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdeR { bits } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & self ) -> RtrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtrR { bits } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & self ) -> TxrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxrqR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & mut self ) -> _StidW { _StidW { w : self } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & mut self ) -> _ExidW { _ExidW { w : self } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & mut self ) -> _IdeW { _IdeW { w : self } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & mut self ) -> _RtrW { _RtrW { w : self } } # [ doc = "Bit 0 - TXRQ" ] # [ inline ( always ) ] pub fn txrq ( & mut self ) -> _TxrqW { _TxrqW { w : self } } } } # [ doc = "mailbox data length control and time stamp register" ] pub struct Tdt2r { register : VolatileCell < u32 > } # [ doc = "mailbox data length control and time stamp register" ] pub mod tdt2r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdt2r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TimeR { bits : u16 , } impl TimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct TgtR { bits : u8 , } impl TgtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DlcR { bits : u8 , } impl DlcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TimeW < 'a > { w : & 'a mut W , } impl < 'a > _TimeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TgtW < 'a > { w : & 'a mut W , } impl < 'a > _TgtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DlcW < 'a > { w : & 'a mut W , } impl < 'a > _DlcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & self ) -> TimeR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TimeR { bits } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & self ) -> TgtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TgtR { bits } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & self ) -> DlcR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DlcR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & mut self ) -> _TimeW { _TimeW { w : self } } # [ doc = "Bit 8 - TGT" ] # [ inline ( always ) ] pub fn tgt ( & mut self ) -> _TgtW { _TgtW { w : self } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & mut self ) -> _DlcW { _DlcW { w : self } } } } # [ doc = "mailbox data low register" ] pub struct Tdl2r { register : VolatileCell < u32 > } # [ doc = "mailbox data low register" ] pub mod tdl2r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdl2r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data3R { bits : u8 , } impl Data3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u8 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u8 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data0R { bits : u8 , } impl Data0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data3W < 'a > { w : & 'a mut W , } impl < 'a > _Data3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data2W < 'a > { w : & 'a mut W , } impl < 'a > _Data2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data1W < 'a > { w : & 'a mut W , } impl < 'a > _Data1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data0W < 'a > { w : & 'a mut W , } impl < 'a > _Data0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & self ) -> Data3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data3R { bits } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data2R { bits } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data1R { bits } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & self ) -> Data0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data0R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & mut self ) -> _Data3W { _Data3W { w : self } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & mut self ) -> _Data2W { _Data2W { w : self } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & mut self ) -> _Data1W { _Data1W { w : self } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & mut self ) -> _Data0W { _Data0W { w : self } } } } # [ doc = "mailbox data high register" ] pub struct Tdh2r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod tdh2r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Tdh2r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Data7R { bits : u8 , } impl Data7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data6R { bits : u8 , } impl Data6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data5R { bits : u8 , } impl Data5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data4R { bits : u8 , } impl Data4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Data7W < 'a > { w : & 'a mut W , } impl < 'a > _Data7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data6W < 'a > { w : & 'a mut W , } impl < 'a > _Data6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data5W < 'a > { w : & 'a mut W , } impl < 'a > _Data5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Data4W < 'a > { w : & 'a mut W , } impl < 'a > _Data4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & self ) -> Data7R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data7R { bits } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & self ) -> Data6R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data6R { bits } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & self ) -> Data5R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data5R { bits } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & self ) -> Data4R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data4R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & mut self ) -> _Data7W { _Data7W { w : self } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & mut self ) -> _Data6W { _Data6W { w : self } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & mut self ) -> _Data5W { _Data5W { w : self } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & mut self ) -> _Data4W { _Data4W { w : self } } } } # [ doc = "receive FIFO mailbox identifier register" ] pub struct Ri0r { register : VolatileCell < u32 > } # [ doc = "receive FIFO mailbox identifier register" ] pub mod ri0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ri0r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct StidR { bits : u16 , } impl StidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExidR { bits : u32 , } impl ExidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdeR { bits : u8 , } impl IdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtrR { bits : u8 , } impl RtrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & self ) -> StidR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; StidR { bits } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & self ) -> ExidR { let bits = { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ExidR { bits } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & self ) -> IdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdeR { bits } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & self ) -> RtrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtrR { bits } } } } # [ doc = "mailbox data high register" ] pub struct Rdt0r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod rdt0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdt0r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TimeR { bits : u16 , } impl TimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct FmiR { bits : u8 , } impl FmiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DlcR { bits : u8 , } impl DlcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & self ) -> TimeR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TimeR { bits } } # [ doc = "Bits 8:15 - FMI" ] # [ inline ( always ) ] pub fn fmi ( & self ) -> FmiR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FmiR { bits } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & self ) -> DlcR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DlcR { bits } } } } # [ doc = "mailbox data high register" ] pub struct Rdl0r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod rdl0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdl0r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Data3R { bits : u8 , } impl Data3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u8 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u8 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data0R { bits : u8 , } impl Data0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & self ) -> Data3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data3R { bits } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data2R { bits } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data1R { bits } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & self ) -> Data0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data0R { bits } } } } # [ doc = "receive FIFO mailbox data high register" ] pub struct Rdh0r { register : VolatileCell < u32 > } # [ doc = "receive FIFO mailbox data high register" ] pub mod rdh0r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdh0r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Data7R { bits : u8 , } impl Data7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data6R { bits : u8 , } impl Data6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data5R { bits : u8 , } impl Data5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data4R { bits : u8 , } impl Data4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & self ) -> Data7R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data7R { bits } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & self ) -> Data6R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data6R { bits } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & self ) -> Data5R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data5R { bits } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & self ) -> Data4R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data4R { bits } } } } # [ doc = "mailbox data high register" ] pub struct Ri1r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod ri1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ri1r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct StidR { bits : u16 , } impl StidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ExidR { bits : u32 , } impl ExidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct IdeR { bits : u8 , } impl IdeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RtrR { bits : u8 , } impl RtrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 21:31 - STID" ] # [ inline ( always ) ] pub fn stid ( & self ) -> StidR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; StidR { bits } } # [ doc = "Bits 3:20 - EXID" ] # [ inline ( always ) ] pub fn exid ( & self ) -> ExidR { let bits = { const MASK : u32 = 262143 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ExidR { bits } } # [ doc = "Bit 2 - IDE" ] # [ inline ( always ) ] pub fn ide ( & self ) -> IdeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IdeR { bits } } # [ doc = "Bit 1 - RTR" ] # [ inline ( always ) ] pub fn rtr ( & self ) -> RtrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RtrR { bits } } } } # [ doc = "mailbox data high register" ] pub struct Rdt1r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod rdt1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdt1r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct TimeR { bits : u16 , } impl TimeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct FmiR { bits : u8 , } impl FmiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DlcR { bits : u8 , } impl DlcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 16:31 - TIME" ] # [ inline ( always ) ] pub fn time ( & self ) -> TimeR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TimeR { bits } } # [ doc = "Bits 8:15 - FMI" ] # [ inline ( always ) ] pub fn fmi ( & self ) -> FmiR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FmiR { bits } } # [ doc = "Bits 0:3 - DLC" ] # [ inline ( always ) ] pub fn dlc ( & self ) -> DlcR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DlcR { bits } } } } # [ doc = "mailbox data high register" ] pub struct Rdl1r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod rdl1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdl1r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Data3R { bits : u8 , } impl Data3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data2R { bits : u8 , } impl Data2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data1R { bits : u8 , } impl Data1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data0R { bits : u8 , } impl Data0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA3" ] # [ inline ( always ) ] pub fn data3 ( & self ) -> Data3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data3R { bits } } # [ doc = "Bits 16:23 - DATA2" ] # [ inline ( always ) ] pub fn data2 ( & self ) -> Data2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data2R { bits } } # [ doc = "Bits 8:15 - DATA1" ] # [ inline ( always ) ] pub fn data1 ( & self ) -> Data1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data1R { bits } } # [ doc = "Bits 0:7 - DATA0" ] # [ inline ( always ) ] pub fn data0 ( & self ) -> Data0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data0R { bits } } } } # [ doc = "mailbox data high register" ] pub struct Rdh1r { register : VolatileCell < u32 > } # [ doc = "mailbox data high register" ] pub mod rdh1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Rdh1r { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct Data7R { bits : u8 , } impl Data7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data6R { bits : u8 , } impl Data6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data5R { bits : u8 , } impl Data5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Data4R { bits : u8 , } impl Data4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 24:31 - DATA7" ] # [ inline ( always ) ] pub fn data7 ( & self ) -> Data7R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data7R { bits } } # [ doc = "Bits 16:23 - DATA6" ] # [ inline ( always ) ] pub fn data6 ( & self ) -> Data6R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data6R { bits } } # [ doc = "Bits 8:15 - DATA5" ] # [ inline ( always ) ] pub fn data5 ( & self ) -> Data5R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data5R { bits } } # [ doc = "Bits 0:7 - DATA4" ] # [ inline ( always ) ] pub fn data4 ( & self ) -> Data4R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Data4R { bits } } } } # [ doc = "filter master register" ] pub struct Fmr { register : VolatileCell < u32 > } # [ doc = "filter master register" ] pub mod fmr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Fmr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Can2sbR { bits : u8 , } impl Can2sbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FinitR { bits : u8 , } impl FinitR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Can2sbW < 'a > { w : & 'a mut W , } impl < 'a > _Can2sbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 63 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FinitW < 'a > { w : & 'a mut W , } impl < 'a > _FinitW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 8:13 - CAN2SB" ] # [ inline ( always ) ] pub fn can2sb ( & self ) -> Can2sbR { let bits = { const MASK : u8 = 63 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Can2sbR { bits } } # [ doc = "Bit 0 - FINIT" ] # [ inline ( always ) ] pub fn finit ( & self ) -> FinitR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FinitR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 706481665 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 8:13 - CAN2SB" ] # [ inline ( always ) ] pub fn can2sb ( & mut self ) -> _Can2sbW { _Can2sbW { w : self } } # [ doc = "Bit 0 - FINIT" ] # [ inline ( always ) ] pub fn finit ( & mut self ) -> _FinitW { _FinitW { w : self } } } } # [ doc = "filter mode register" ] pub struct Fm1r { register : VolatileCell < u32 > } # [ doc = "filter mode register" ] pub mod fm1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Fm1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fbm0R { bits : u8 , } impl Fbm0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm1R { bits : u8 , } impl Fbm1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm2R { bits : u8 , } impl Fbm2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm3R { bits : u8 , } impl Fbm3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm4R { bits : u8 , } impl Fbm4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm5R { bits : u8 , } impl Fbm5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm6R { bits : u8 , } impl Fbm6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm7R { bits : u8 , } impl Fbm7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm8R { bits : u8 , } impl Fbm8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm9R { bits : u8 , } impl Fbm9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm10R { bits : u8 , } impl Fbm10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm11R { bits : u8 , } impl Fbm11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm12R { bits : u8 , } impl Fbm12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm13R { bits : u8 , } impl Fbm13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm14R { bits : u8 , } impl Fbm14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm15R { bits : u8 , } impl Fbm15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm16R { bits : u8 , } impl Fbm16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm17R { bits : u8 , } impl Fbm17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm18R { bits : u8 , } impl Fbm18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm19R { bits : u8 , } impl Fbm19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm20R { bits : u8 , } impl Fbm20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm21R { bits : u8 , } impl Fbm21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm22R { bits : u8 , } impl Fbm22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm23R { bits : u8 , } impl Fbm23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm24R { bits : u8 , } impl Fbm24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm25R { bits : u8 , } impl Fbm25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm26R { bits : u8 , } impl Fbm26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fbm27R { bits : u8 , } impl Fbm27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fbm0W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm1W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm2W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm3W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm4W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm5W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm6W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm7W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm8W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm9W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm10W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm11W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm12W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm13W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm14W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm15W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm16W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm17W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm18W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm19W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm20W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm21W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm22W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm23W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm24W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm25W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm26W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fbm27W < 'a > { w : & 'a mut W , } impl < 'a > _Fbm27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter mode" ] # [ inline ( always ) ] pub fn fbm0 ( & self ) -> Fbm0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm0R { bits } } # [ doc = "Bit 1 - Filter mode" ] # [ inline ( always ) ] pub fn fbm1 ( & self ) -> Fbm1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm1R { bits } } # [ doc = "Bit 2 - Filter mode" ] # [ inline ( always ) ] pub fn fbm2 ( & self ) -> Fbm2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm2R { bits } } # [ doc = "Bit 3 - Filter mode" ] # [ inline ( always ) ] pub fn fbm3 ( & self ) -> Fbm3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm3R { bits } } # [ doc = "Bit 4 - Filter mode" ] # [ inline ( always ) ] pub fn fbm4 ( & self ) -> Fbm4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm4R { bits } } # [ doc = "Bit 5 - Filter mode" ] # [ inline ( always ) ] pub fn fbm5 ( & self ) -> Fbm5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm5R { bits } } # [ doc = "Bit 6 - Filter mode" ] # [ inline ( always ) ] pub fn fbm6 ( & self ) -> Fbm6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm6R { bits } } # [ doc = "Bit 7 - Filter mode" ] # [ inline ( always ) ] pub fn fbm7 ( & self ) -> Fbm7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm7R { bits } } # [ doc = "Bit 8 - Filter mode" ] # [ inline ( always ) ] pub fn fbm8 ( & self ) -> Fbm8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm8R { bits } } # [ doc = "Bit 9 - Filter mode" ] # [ inline ( always ) ] pub fn fbm9 ( & self ) -> Fbm9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm9R { bits } } # [ doc = "Bit 10 - Filter mode" ] # [ inline ( always ) ] pub fn fbm10 ( & self ) -> Fbm10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm10R { bits } } # [ doc = "Bit 11 - Filter mode" ] # [ inline ( always ) ] pub fn fbm11 ( & self ) -> Fbm11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm11R { bits } } # [ doc = "Bit 12 - Filter mode" ] # [ inline ( always ) ] pub fn fbm12 ( & self ) -> Fbm12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm12R { bits } } # [ doc = "Bit 13 - Filter mode" ] # [ inline ( always ) ] pub fn fbm13 ( & self ) -> Fbm13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm13R { bits } } # [ doc = "Bit 14 - Filter mode" ] # [ inline ( always ) ] pub fn fbm14 ( & self ) -> Fbm14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm14R { bits } } # [ doc = "Bit 15 - Filter mode" ] # [ inline ( always ) ] pub fn fbm15 ( & self ) -> Fbm15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm15R { bits } } # [ doc = "Bit 16 - Filter mode" ] # [ inline ( always ) ] pub fn fbm16 ( & self ) -> Fbm16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm16R { bits } } # [ doc = "Bit 17 - Filter mode" ] # [ inline ( always ) ] pub fn fbm17 ( & self ) -> Fbm17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm17R { bits } } # [ doc = "Bit 18 - Filter mode" ] # [ inline ( always ) ] pub fn fbm18 ( & self ) -> Fbm18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm18R { bits } } # [ doc = "Bit 19 - Filter mode" ] # [ inline ( always ) ] pub fn fbm19 ( & self ) -> Fbm19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm19R { bits } } # [ doc = "Bit 20 - Filter mode" ] # [ inline ( always ) ] pub fn fbm20 ( & self ) -> Fbm20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm20R { bits } } # [ doc = "Bit 21 - Filter mode" ] # [ inline ( always ) ] pub fn fbm21 ( & self ) -> Fbm21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm21R { bits } } # [ doc = "Bit 22 - Filter mode" ] # [ inline ( always ) ] pub fn fbm22 ( & self ) -> Fbm22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm22R { bits } } # [ doc = "Bit 23 - Filter mode" ] # [ inline ( always ) ] pub fn fbm23 ( & self ) -> Fbm23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm23R { bits } } # [ doc = "Bit 24 - Filter mode" ] # [ inline ( always ) ] pub fn fbm24 ( & self ) -> Fbm24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm24R { bits } } # [ doc = "Bit 25 - Filter mode" ] # [ inline ( always ) ] pub fn fbm25 ( & self ) -> Fbm25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm25R { bits } } # [ doc = "Bit 26 - Filter mode" ] # [ inline ( always ) ] pub fn fbm26 ( & self ) -> Fbm26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm26R { bits } } # [ doc = "Bit 27 - Filter mode" ] # [ inline ( always ) ] pub fn fbm27 ( & self ) -> Fbm27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fbm27R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter mode" ] # [ inline ( always ) ] pub fn fbm0 ( & mut self ) -> _Fbm0W { _Fbm0W { w : self } } # [ doc = "Bit 1 - Filter mode" ] # [ inline ( always ) ] pub fn fbm1 ( & mut self ) -> _Fbm1W { _Fbm1W { w : self } } # [ doc = "Bit 2 - Filter mode" ] # [ inline ( always ) ] pub fn fbm2 ( & mut self ) -> _Fbm2W { _Fbm2W { w : self } } # [ doc = "Bit 3 - Filter mode" ] # [ inline ( always ) ] pub fn fbm3 ( & mut self ) -> _Fbm3W { _Fbm3W { w : self } } # [ doc = "Bit 4 - Filter mode" ] # [ inline ( always ) ] pub fn fbm4 ( & mut self ) -> _Fbm4W { _Fbm4W { w : self } } # [ doc = "Bit 5 - Filter mode" ] # [ inline ( always ) ] pub fn fbm5 ( & mut self ) -> _Fbm5W { _Fbm5W { w : self } } # [ doc = "Bit 6 - Filter mode" ] # [ inline ( always ) ] pub fn fbm6 ( & mut self ) -> _Fbm6W { _Fbm6W { w : self } } # [ doc = "Bit 7 - Filter mode" ] # [ inline ( always ) ] pub fn fbm7 ( & mut self ) -> _Fbm7W { _Fbm7W { w : self } } # [ doc = "Bit 8 - Filter mode" ] # [ inline ( always ) ] pub fn fbm8 ( & mut self ) -> _Fbm8W { _Fbm8W { w : self } } # [ doc = "Bit 9 - Filter mode" ] # [ inline ( always ) ] pub fn fbm9 ( & mut self ) -> _Fbm9W { _Fbm9W { w : self } } # [ doc = "Bit 10 - Filter mode" ] # [ inline ( always ) ] pub fn fbm10 ( & mut self ) -> _Fbm10W { _Fbm10W { w : self } } # [ doc = "Bit 11 - Filter mode" ] # [ inline ( always ) ] pub fn fbm11 ( & mut self ) -> _Fbm11W { _Fbm11W { w : self } } # [ doc = "Bit 12 - Filter mode" ] # [ inline ( always ) ] pub fn fbm12 ( & mut self ) -> _Fbm12W { _Fbm12W { w : self } } # [ doc = "Bit 13 - Filter mode" ] # [ inline ( always ) ] pub fn fbm13 ( & mut self ) -> _Fbm13W { _Fbm13W { w : self } } # [ doc = "Bit 14 - Filter mode" ] # [ inline ( always ) ] pub fn fbm14 ( & mut self ) -> _Fbm14W { _Fbm14W { w : self } } # [ doc = "Bit 15 - Filter mode" ] # [ inline ( always ) ] pub fn fbm15 ( & mut self ) -> _Fbm15W { _Fbm15W { w : self } } # [ doc = "Bit 16 - Filter mode" ] # [ inline ( always ) ] pub fn fbm16 ( & mut self ) -> _Fbm16W { _Fbm16W { w : self } } # [ doc = "Bit 17 - Filter mode" ] # [ inline ( always ) ] pub fn fbm17 ( & mut self ) -> _Fbm17W { _Fbm17W { w : self } } # [ doc = "Bit 18 - Filter mode" ] # [ inline ( always ) ] pub fn fbm18 ( & mut self ) -> _Fbm18W { _Fbm18W { w : self } } # [ doc = "Bit 19 - Filter mode" ] # [ inline ( always ) ] pub fn fbm19 ( & mut self ) -> _Fbm19W { _Fbm19W { w : self } } # [ doc = "Bit 20 - Filter mode" ] # [ inline ( always ) ] pub fn fbm20 ( & mut self ) -> _Fbm20W { _Fbm20W { w : self } } # [ doc = "Bit 21 - Filter mode" ] # [ inline ( always ) ] pub fn fbm21 ( & mut self ) -> _Fbm21W { _Fbm21W { w : self } } # [ doc = "Bit 22 - Filter mode" ] # [ inline ( always ) ] pub fn fbm22 ( & mut self ) -> _Fbm22W { _Fbm22W { w : self } } # [ doc = "Bit 23 - Filter mode" ] # [ inline ( always ) ] pub fn fbm23 ( & mut self ) -> _Fbm23W { _Fbm23W { w : self } } # [ doc = "Bit 24 - Filter mode" ] # [ inline ( always ) ] pub fn fbm24 ( & mut self ) -> _Fbm24W { _Fbm24W { w : self } } # [ doc = "Bit 25 - Filter mode" ] # [ inline ( always ) ] pub fn fbm25 ( & mut self ) -> _Fbm25W { _Fbm25W { w : self } } # [ doc = "Bit 26 - Filter mode" ] # [ inline ( always ) ] pub fn fbm26 ( & mut self ) -> _Fbm26W { _Fbm26W { w : self } } # [ doc = "Bit 27 - Filter mode" ] # [ inline ( always ) ] pub fn fbm27 ( & mut self ) -> _Fbm27W { _Fbm27W { w : self } } } } # [ doc = "filter scale register" ] pub struct Fs1r { register : VolatileCell < u32 > } # [ doc = "filter scale register" ] pub mod fs1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Fs1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fsc0R { bits : u8 , } impl Fsc0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc1R { bits : u8 , } impl Fsc1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc2R { bits : u8 , } impl Fsc2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc3R { bits : u8 , } impl Fsc3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc4R { bits : u8 , } impl Fsc4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc5R { bits : u8 , } impl Fsc5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc6R { bits : u8 , } impl Fsc6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc7R { bits : u8 , } impl Fsc7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc8R { bits : u8 , } impl Fsc8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc9R { bits : u8 , } impl Fsc9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc10R { bits : u8 , } impl Fsc10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc11R { bits : u8 , } impl Fsc11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc12R { bits : u8 , } impl Fsc12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc13R { bits : u8 , } impl Fsc13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc14R { bits : u8 , } impl Fsc14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc15R { bits : u8 , } impl Fsc15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc16R { bits : u8 , } impl Fsc16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc17R { bits : u8 , } impl Fsc17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc18R { bits : u8 , } impl Fsc18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc19R { bits : u8 , } impl Fsc19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc20R { bits : u8 , } impl Fsc20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc21R { bits : u8 , } impl Fsc21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc22R { bits : u8 , } impl Fsc22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc23R { bits : u8 , } impl Fsc23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc24R { bits : u8 , } impl Fsc24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc25R { bits : u8 , } impl Fsc25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc26R { bits : u8 , } impl Fsc26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fsc27R { bits : u8 , } impl Fsc27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fsc0W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc1W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc2W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc3W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc4W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc5W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc6W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc7W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc8W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc9W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc10W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc11W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc12W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc13W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc14W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc15W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc16W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc17W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc18W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc19W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc20W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc21W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc22W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc23W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc24W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc25W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc26W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fsc27W < 'a > { w : & 'a mut W , } impl < 'a > _Fsc27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc0 ( & self ) -> Fsc0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc0R { bits } } # [ doc = "Bit 1 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc1 ( & self ) -> Fsc1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc1R { bits } } # [ doc = "Bit 2 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc2 ( & self ) -> Fsc2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc2R { bits } } # [ doc = "Bit 3 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc3 ( & self ) -> Fsc3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc3R { bits } } # [ doc = "Bit 4 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc4 ( & self ) -> Fsc4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc4R { bits } } # [ doc = "Bit 5 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc5 ( & self ) -> Fsc5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc5R { bits } } # [ doc = "Bit 6 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc6 ( & self ) -> Fsc6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc6R { bits } } # [ doc = "Bit 7 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc7 ( & self ) -> Fsc7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc7R { bits } } # [ doc = "Bit 8 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc8 ( & self ) -> Fsc8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc8R { bits } } # [ doc = "Bit 9 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc9 ( & self ) -> Fsc9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc9R { bits } } # [ doc = "Bit 10 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc10 ( & self ) -> Fsc10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc10R { bits } } # [ doc = "Bit 11 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc11 ( & self ) -> Fsc11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc11R { bits } } # [ doc = "Bit 12 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc12 ( & self ) -> Fsc12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc12R { bits } } # [ doc = "Bit 13 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc13 ( & self ) -> Fsc13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc13R { bits } } # [ doc = "Bit 14 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc14 ( & self ) -> Fsc14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc14R { bits } } # [ doc = "Bit 15 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc15 ( & self ) -> Fsc15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc15R { bits } } # [ doc = "Bit 16 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc16 ( & self ) -> Fsc16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc16R { bits } } # [ doc = "Bit 17 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc17 ( & self ) -> Fsc17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc17R { bits } } # [ doc = "Bit 18 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc18 ( & self ) -> Fsc18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc18R { bits } } # [ doc = "Bit 19 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc19 ( & self ) -> Fsc19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc19R { bits } } # [ doc = "Bit 20 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc20 ( & self ) -> Fsc20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc20R { bits } } # [ doc = "Bit 21 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc21 ( & self ) -> Fsc21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc21R { bits } } # [ doc = "Bit 22 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc22 ( & self ) -> Fsc22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc22R { bits } } # [ doc = "Bit 23 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc23 ( & self ) -> Fsc23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc23R { bits } } # [ doc = "Bit 24 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc24 ( & self ) -> Fsc24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc24R { bits } } # [ doc = "Bit 25 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc25 ( & self ) -> Fsc25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc25R { bits } } # [ doc = "Bit 26 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc26 ( & self ) -> Fsc26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc26R { bits } } # [ doc = "Bit 27 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc27 ( & self ) -> Fsc27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fsc27R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc0 ( & mut self ) -> _Fsc0W { _Fsc0W { w : self } } # [ doc = "Bit 1 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc1 ( & mut self ) -> _Fsc1W { _Fsc1W { w : self } } # [ doc = "Bit 2 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc2 ( & mut self ) -> _Fsc2W { _Fsc2W { w : self } } # [ doc = "Bit 3 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc3 ( & mut self ) -> _Fsc3W { _Fsc3W { w : self } } # [ doc = "Bit 4 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc4 ( & mut self ) -> _Fsc4W { _Fsc4W { w : self } } # [ doc = "Bit 5 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc5 ( & mut self ) -> _Fsc5W { _Fsc5W { w : self } } # [ doc = "Bit 6 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc6 ( & mut self ) -> _Fsc6W { _Fsc6W { w : self } } # [ doc = "Bit 7 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc7 ( & mut self ) -> _Fsc7W { _Fsc7W { w : self } } # [ doc = "Bit 8 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc8 ( & mut self ) -> _Fsc8W { _Fsc8W { w : self } } # [ doc = "Bit 9 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc9 ( & mut self ) -> _Fsc9W { _Fsc9W { w : self } } # [ doc = "Bit 10 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc10 ( & mut self ) -> _Fsc10W { _Fsc10W { w : self } } # [ doc = "Bit 11 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc11 ( & mut self ) -> _Fsc11W { _Fsc11W { w : self } } # [ doc = "Bit 12 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc12 ( & mut self ) -> _Fsc12W { _Fsc12W { w : self } } # [ doc = "Bit 13 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc13 ( & mut self ) -> _Fsc13W { _Fsc13W { w : self } } # [ doc = "Bit 14 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc14 ( & mut self ) -> _Fsc14W { _Fsc14W { w : self } } # [ doc = "Bit 15 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc15 ( & mut self ) -> _Fsc15W { _Fsc15W { w : self } } # [ doc = "Bit 16 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc16 ( & mut self ) -> _Fsc16W { _Fsc16W { w : self } } # [ doc = "Bit 17 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc17 ( & mut self ) -> _Fsc17W { _Fsc17W { w : self } } # [ doc = "Bit 18 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc18 ( & mut self ) -> _Fsc18W { _Fsc18W { w : self } } # [ doc = "Bit 19 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc19 ( & mut self ) -> _Fsc19W { _Fsc19W { w : self } } # [ doc = "Bit 20 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc20 ( & mut self ) -> _Fsc20W { _Fsc20W { w : self } } # [ doc = "Bit 21 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc21 ( & mut self ) -> _Fsc21W { _Fsc21W { w : self } } # [ doc = "Bit 22 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc22 ( & mut self ) -> _Fsc22W { _Fsc22W { w : self } } # [ doc = "Bit 23 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc23 ( & mut self ) -> _Fsc23W { _Fsc23W { w : self } } # [ doc = "Bit 24 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc24 ( & mut self ) -> _Fsc24W { _Fsc24W { w : self } } # [ doc = "Bit 25 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc25 ( & mut self ) -> _Fsc25W { _Fsc25W { w : self } } # [ doc = "Bit 26 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc26 ( & mut self ) -> _Fsc26W { _Fsc26W { w : self } } # [ doc = "Bit 27 - Filter scale configuration" ] # [ inline ( always ) ] pub fn fsc27 ( & mut self ) -> _Fsc27W { _Fsc27W { w : self } } } } # [ doc = "filter FIFO assignment register" ] pub struct Ffa1r { register : VolatileCell < u32 > } # [ doc = "filter FIFO assignment register" ] pub mod ffa1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ffa1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Ffa0R { bits : u8 , } impl Ffa0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa1R { bits : u8 , } impl Ffa1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa2R { bits : u8 , } impl Ffa2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa3R { bits : u8 , } impl Ffa3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa4R { bits : u8 , } impl Ffa4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa5R { bits : u8 , } impl Ffa5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa6R { bits : u8 , } impl Ffa6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa7R { bits : u8 , } impl Ffa7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa8R { bits : u8 , } impl Ffa8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa9R { bits : u8 , } impl Ffa9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa10R { bits : u8 , } impl Ffa10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa11R { bits : u8 , } impl Ffa11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa12R { bits : u8 , } impl Ffa12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa13R { bits : u8 , } impl Ffa13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa14R { bits : u8 , } impl Ffa14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa15R { bits : u8 , } impl Ffa15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa16R { bits : u8 , } impl Ffa16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa17R { bits : u8 , } impl Ffa17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa18R { bits : u8 , } impl Ffa18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa19R { bits : u8 , } impl Ffa19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa20R { bits : u8 , } impl Ffa20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa21R { bits : u8 , } impl Ffa21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa22R { bits : u8 , } impl Ffa22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa23R { bits : u8 , } impl Ffa23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa24R { bits : u8 , } impl Ffa24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa25R { bits : u8 , } impl Ffa25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa26R { bits : u8 , } impl Ffa26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Ffa27R { bits : u8 , } impl Ffa27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Ffa0W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa1W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa2W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa3W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa4W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa5W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa6W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa7W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa8W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa9W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa10W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa11W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa12W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa13W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa14W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa15W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa16W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa17W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa18W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa19W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa20W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa21W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa22W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa23W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa24W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa25W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa26W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Ffa27W < 'a > { w : & 'a mut W , } impl < 'a > _Ffa27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter FIFO assignment for filter 0" ] # [ inline ( always ) ] pub fn ffa0 ( & self ) -> Ffa0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa0R { bits } } # [ doc = "Bit 1 - Filter FIFO assignment for filter 1" ] # [ inline ( always ) ] pub fn ffa1 ( & self ) -> Ffa1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa1R { bits } } # [ doc = "Bit 2 - Filter FIFO assignment for filter 2" ] # [ inline ( always ) ] pub fn ffa2 ( & self ) -> Ffa2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa2R { bits } } # [ doc = "Bit 3 - Filter FIFO assignment for filter 3" ] # [ inline ( always ) ] pub fn ffa3 ( & self ) -> Ffa3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa3R { bits } } # [ doc = "Bit 4 - Filter FIFO assignment for filter 4" ] # [ inline ( always ) ] pub fn ffa4 ( & self ) -> Ffa4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa4R { bits } } # [ doc = "Bit 5 - Filter FIFO assignment for filter 5" ] # [ inline ( always ) ] pub fn ffa5 ( & self ) -> Ffa5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa5R { bits } } # [ doc = "Bit 6 - Filter FIFO assignment for filter 6" ] # [ inline ( always ) ] pub fn ffa6 ( & self ) -> Ffa6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa6R { bits } } # [ doc = "Bit 7 - Filter FIFO assignment for filter 7" ] # [ inline ( always ) ] pub fn ffa7 ( & self ) -> Ffa7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa7R { bits } } # [ doc = "Bit 8 - Filter FIFO assignment for filter 8" ] # [ inline ( always ) ] pub fn ffa8 ( & self ) -> Ffa8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa8R { bits } } # [ doc = "Bit 9 - Filter FIFO assignment for filter 9" ] # [ inline ( always ) ] pub fn ffa9 ( & self ) -> Ffa9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa9R { bits } } # [ doc = "Bit 10 - Filter FIFO assignment for filter 10" ] # [ inline ( always ) ] pub fn ffa10 ( & self ) -> Ffa10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa10R { bits } } # [ doc = "Bit 11 - Filter FIFO assignment for filter 11" ] # [ inline ( always ) ] pub fn ffa11 ( & self ) -> Ffa11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa11R { bits } } # [ doc = "Bit 12 - Filter FIFO assignment for filter 12" ] # [ inline ( always ) ] pub fn ffa12 ( & self ) -> Ffa12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa12R { bits } } # [ doc = "Bit 13 - Filter FIFO assignment for filter 13" ] # [ inline ( always ) ] pub fn ffa13 ( & self ) -> Ffa13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa13R { bits } } # [ doc = "Bit 14 - Filter FIFO assignment for filter 14" ] # [ inline ( always ) ] pub fn ffa14 ( & self ) -> Ffa14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa14R { bits } } # [ doc = "Bit 15 - Filter FIFO assignment for filter 15" ] # [ inline ( always ) ] pub fn ffa15 ( & self ) -> Ffa15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa15R { bits } } # [ doc = "Bit 16 - Filter FIFO assignment for filter 16" ] # [ inline ( always ) ] pub fn ffa16 ( & self ) -> Ffa16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa16R { bits } } # [ doc = "Bit 17 - Filter FIFO assignment for filter 17" ] # [ inline ( always ) ] pub fn ffa17 ( & self ) -> Ffa17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa17R { bits } } # [ doc = "Bit 18 - Filter FIFO assignment for filter 18" ] # [ inline ( always ) ] pub fn ffa18 ( & self ) -> Ffa18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa18R { bits } } # [ doc = "Bit 19 - Filter FIFO assignment for filter 19" ] # [ inline ( always ) ] pub fn ffa19 ( & self ) -> Ffa19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa19R { bits } } # [ doc = "Bit 20 - Filter FIFO assignment for filter 20" ] # [ inline ( always ) ] pub fn ffa20 ( & self ) -> Ffa20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa20R { bits } } # [ doc = "Bit 21 - Filter FIFO assignment for filter 21" ] # [ inline ( always ) ] pub fn ffa21 ( & self ) -> Ffa21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa21R { bits } } # [ doc = "Bit 22 - Filter FIFO assignment for filter 22" ] # [ inline ( always ) ] pub fn ffa22 ( & self ) -> Ffa22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa22R { bits } } # [ doc = "Bit 23 - Filter FIFO assignment for filter 23" ] # [ inline ( always ) ] pub fn ffa23 ( & self ) -> Ffa23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa23R { bits } } # [ doc = "Bit 24 - Filter FIFO assignment for filter 24" ] # [ inline ( always ) ] pub fn ffa24 ( & self ) -> Ffa24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa24R { bits } } # [ doc = "Bit 25 - Filter FIFO assignment for filter 25" ] # [ inline ( always ) ] pub fn ffa25 ( & self ) -> Ffa25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa25R { bits } } # [ doc = "Bit 26 - Filter FIFO assignment for filter 26" ] # [ inline ( always ) ] pub fn ffa26 ( & self ) -> Ffa26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa26R { bits } } # [ doc = "Bit 27 - Filter FIFO assignment for filter 27" ] # [ inline ( always ) ] pub fn ffa27 ( & self ) -> Ffa27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Ffa27R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter FIFO assignment for filter 0" ] # [ inline ( always ) ] pub fn ffa0 ( & mut self ) -> _Ffa0W { _Ffa0W { w : self } } # [ doc = "Bit 1 - Filter FIFO assignment for filter 1" ] # [ inline ( always ) ] pub fn ffa1 ( & mut self ) -> _Ffa1W { _Ffa1W { w : self } } # [ doc = "Bit 2 - Filter FIFO assignment for filter 2" ] # [ inline ( always ) ] pub fn ffa2 ( & mut self ) -> _Ffa2W { _Ffa2W { w : self } } # [ doc = "Bit 3 - Filter FIFO assignment for filter 3" ] # [ inline ( always ) ] pub fn ffa3 ( & mut self ) -> _Ffa3W { _Ffa3W { w : self } } # [ doc = "Bit 4 - Filter FIFO assignment for filter 4" ] # [ inline ( always ) ] pub fn ffa4 ( & mut self ) -> _Ffa4W { _Ffa4W { w : self } } # [ doc = "Bit 5 - Filter FIFO assignment for filter 5" ] # [ inline ( always ) ] pub fn ffa5 ( & mut self ) -> _Ffa5W { _Ffa5W { w : self } } # [ doc = "Bit 6 - Filter FIFO assignment for filter 6" ] # [ inline ( always ) ] pub fn ffa6 ( & mut self ) -> _Ffa6W { _Ffa6W { w : self } } # [ doc = "Bit 7 - Filter FIFO assignment for filter 7" ] # [ inline ( always ) ] pub fn ffa7 ( & mut self ) -> _Ffa7W { _Ffa7W { w : self } } # [ doc = "Bit 8 - Filter FIFO assignment for filter 8" ] # [ inline ( always ) ] pub fn ffa8 ( & mut self ) -> _Ffa8W { _Ffa8W { w : self } } # [ doc = "Bit 9 - Filter FIFO assignment for filter 9" ] # [ inline ( always ) ] pub fn ffa9 ( & mut self ) -> _Ffa9W { _Ffa9W { w : self } } # [ doc = "Bit 10 - Filter FIFO assignment for filter 10" ] # [ inline ( always ) ] pub fn ffa10 ( & mut self ) -> _Ffa10W { _Ffa10W { w : self } } # [ doc = "Bit 11 - Filter FIFO assignment for filter 11" ] # [ inline ( always ) ] pub fn ffa11 ( & mut self ) -> _Ffa11W { _Ffa11W { w : self } } # [ doc = "Bit 12 - Filter FIFO assignment for filter 12" ] # [ inline ( always ) ] pub fn ffa12 ( & mut self ) -> _Ffa12W { _Ffa12W { w : self } } # [ doc = "Bit 13 - Filter FIFO assignment for filter 13" ] # [ inline ( always ) ] pub fn ffa13 ( & mut self ) -> _Ffa13W { _Ffa13W { w : self } } # [ doc = "Bit 14 - Filter FIFO assignment for filter 14" ] # [ inline ( always ) ] pub fn ffa14 ( & mut self ) -> _Ffa14W { _Ffa14W { w : self } } # [ doc = "Bit 15 - Filter FIFO assignment for filter 15" ] # [ inline ( always ) ] pub fn ffa15 ( & mut self ) -> _Ffa15W { _Ffa15W { w : self } } # [ doc = "Bit 16 - Filter FIFO assignment for filter 16" ] # [ inline ( always ) ] pub fn ffa16 ( & mut self ) -> _Ffa16W { _Ffa16W { w : self } } # [ doc = "Bit 17 - Filter FIFO assignment for filter 17" ] # [ inline ( always ) ] pub fn ffa17 ( & mut self ) -> _Ffa17W { _Ffa17W { w : self } } # [ doc = "Bit 18 - Filter FIFO assignment for filter 18" ] # [ inline ( always ) ] pub fn ffa18 ( & mut self ) -> _Ffa18W { _Ffa18W { w : self } } # [ doc = "Bit 19 - Filter FIFO assignment for filter 19" ] # [ inline ( always ) ] pub fn ffa19 ( & mut self ) -> _Ffa19W { _Ffa19W { w : self } } # [ doc = "Bit 20 - Filter FIFO assignment for filter 20" ] # [ inline ( always ) ] pub fn ffa20 ( & mut self ) -> _Ffa20W { _Ffa20W { w : self } } # [ doc = "Bit 21 - Filter FIFO assignment for filter 21" ] # [ inline ( always ) ] pub fn ffa21 ( & mut self ) -> _Ffa21W { _Ffa21W { w : self } } # [ doc = "Bit 22 - Filter FIFO assignment for filter 22" ] # [ inline ( always ) ] pub fn ffa22 ( & mut self ) -> _Ffa22W { _Ffa22W { w : self } } # [ doc = "Bit 23 - Filter FIFO assignment for filter 23" ] # [ inline ( always ) ] pub fn ffa23 ( & mut self ) -> _Ffa23W { _Ffa23W { w : self } } # [ doc = "Bit 24 - Filter FIFO assignment for filter 24" ] # [ inline ( always ) ] pub fn ffa24 ( & mut self ) -> _Ffa24W { _Ffa24W { w : self } } # [ doc = "Bit 25 - Filter FIFO assignment for filter 25" ] # [ inline ( always ) ] pub fn ffa25 ( & mut self ) -> _Ffa25W { _Ffa25W { w : self } } # [ doc = "Bit 26 - Filter FIFO assignment for filter 26" ] # [ inline ( always ) ] pub fn ffa26 ( & mut self ) -> _Ffa26W { _Ffa26W { w : self } } # [ doc = "Bit 27 - Filter FIFO assignment for filter 27" ] # [ inline ( always ) ] pub fn ffa27 ( & mut self ) -> _Ffa27W { _Ffa27W { w : self } } } } # [ doc = "filter activation register" ] pub struct Fa1r { register : VolatileCell < u32 > } # [ doc = "filter activation register" ] pub mod fa1r { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Fa1r { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fact0R { bits : u8 , } impl Fact0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact1R { bits : u8 , } impl Fact1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact2R { bits : u8 , } impl Fact2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact3R { bits : u8 , } impl Fact3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact4R { bits : u8 , } impl Fact4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact5R { bits : u8 , } impl Fact5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact6R { bits : u8 , } impl Fact6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact7R { bits : u8 , } impl Fact7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact8R { bits : u8 , } impl Fact8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact9R { bits : u8 , } impl Fact9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact10R { bits : u8 , } impl Fact10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact11R { bits : u8 , } impl Fact11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact12R { bits : u8 , } impl Fact12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact13R { bits : u8 , } impl Fact13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact14R { bits : u8 , } impl Fact14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact15R { bits : u8 , } impl Fact15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact16R { bits : u8 , } impl Fact16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact17R { bits : u8 , } impl Fact17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact18R { bits : u8 , } impl Fact18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact19R { bits : u8 , } impl Fact19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact20R { bits : u8 , } impl Fact20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact21R { bits : u8 , } impl Fact21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact22R { bits : u8 , } impl Fact22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact23R { bits : u8 , } impl Fact23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact24R { bits : u8 , } impl Fact24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact25R { bits : u8 , } impl Fact25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact26R { bits : u8 , } impl Fact26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fact27R { bits : u8 , } impl Fact27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fact0W < 'a > { w : & 'a mut W , } impl < 'a > _Fact0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact1W < 'a > { w : & 'a mut W , } impl < 'a > _Fact1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact2W < 'a > { w : & 'a mut W , } impl < 'a > _Fact2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact3W < 'a > { w : & 'a mut W , } impl < 'a > _Fact3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact4W < 'a > { w : & 'a mut W , } impl < 'a > _Fact4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact5W < 'a > { w : & 'a mut W , } impl < 'a > _Fact5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact6W < 'a > { w : & 'a mut W , } impl < 'a > _Fact6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact7W < 'a > { w : & 'a mut W , } impl < 'a > _Fact7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact8W < 'a > { w : & 'a mut W , } impl < 'a > _Fact8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact9W < 'a > { w : & 'a mut W , } impl < 'a > _Fact9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact10W < 'a > { w : & 'a mut W , } impl < 'a > _Fact10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact11W < 'a > { w : & 'a mut W , } impl < 'a > _Fact11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact12W < 'a > { w : & 'a mut W , } impl < 'a > _Fact12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact13W < 'a > { w : & 'a mut W , } impl < 'a > _Fact13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact14W < 'a > { w : & 'a mut W , } impl < 'a > _Fact14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact15W < 'a > { w : & 'a mut W , } impl < 'a > _Fact15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact16W < 'a > { w : & 'a mut W , } impl < 'a > _Fact16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact17W < 'a > { w : & 'a mut W , } impl < 'a > _Fact17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact18W < 'a > { w : & 'a mut W , } impl < 'a > _Fact18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact19W < 'a > { w : & 'a mut W , } impl < 'a > _Fact19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact20W < 'a > { w : & 'a mut W , } impl < 'a > _Fact20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact21W < 'a > { w : & 'a mut W , } impl < 'a > _Fact21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact22W < 'a > { w : & 'a mut W , } impl < 'a > _Fact22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact23W < 'a > { w : & 'a mut W , } impl < 'a > _Fact23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact24W < 'a > { w : & 'a mut W , } impl < 'a > _Fact24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact25W < 'a > { w : & 'a mut W , } impl < 'a > _Fact25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact26W < 'a > { w : & 'a mut W , } impl < 'a > _Fact26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fact27W < 'a > { w : & 'a mut W , } impl < 'a > _Fact27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter active" ] # [ inline ( always ) ] pub fn fact0 ( & self ) -> Fact0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact0R { bits } } # [ doc = "Bit 1 - Filter active" ] # [ inline ( always ) ] pub fn fact1 ( & self ) -> Fact1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact1R { bits } } # [ doc = "Bit 2 - Filter active" ] # [ inline ( always ) ] pub fn fact2 ( & self ) -> Fact2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact2R { bits } } # [ doc = "Bit 3 - Filter active" ] # [ inline ( always ) ] pub fn fact3 ( & self ) -> Fact3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact3R { bits } } # [ doc = "Bit 4 - Filter active" ] # [ inline ( always ) ] pub fn fact4 ( & self ) -> Fact4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact4R { bits } } # [ doc = "Bit 5 - Filter active" ] # [ inline ( always ) ] pub fn fact5 ( & self ) -> Fact5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact5R { bits } } # [ doc = "Bit 6 - Filter active" ] # [ inline ( always ) ] pub fn fact6 ( & self ) -> Fact6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact6R { bits } } # [ doc = "Bit 7 - Filter active" ] # [ inline ( always ) ] pub fn fact7 ( & self ) -> Fact7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact7R { bits } } # [ doc = "Bit 8 - Filter active" ] # [ inline ( always ) ] pub fn fact8 ( & self ) -> Fact8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact8R { bits } } # [ doc = "Bit 9 - Filter active" ] # [ inline ( always ) ] pub fn fact9 ( & self ) -> Fact9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact9R { bits } } # [ doc = "Bit 10 - Filter active" ] # [ inline ( always ) ] pub fn fact10 ( & self ) -> Fact10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact10R { bits } } # [ doc = "Bit 11 - Filter active" ] # [ inline ( always ) ] pub fn fact11 ( & self ) -> Fact11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact11R { bits } } # [ doc = "Bit 12 - Filter active" ] # [ inline ( always ) ] pub fn fact12 ( & self ) -> Fact12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact12R { bits } } # [ doc = "Bit 13 - Filter active" ] # [ inline ( always ) ] pub fn fact13 ( & self ) -> Fact13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact13R { bits } } # [ doc = "Bit 14 - Filter active" ] # [ inline ( always ) ] pub fn fact14 ( & self ) -> Fact14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact14R { bits } } # [ doc = "Bit 15 - Filter active" ] # [ inline ( always ) ] pub fn fact15 ( & self ) -> Fact15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact15R { bits } } # [ doc = "Bit 16 - Filter active" ] # [ inline ( always ) ] pub fn fact16 ( & self ) -> Fact16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact16R { bits } } # [ doc = "Bit 17 - Filter active" ] # [ inline ( always ) ] pub fn fact17 ( & self ) -> Fact17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact17R { bits } } # [ doc = "Bit 18 - Filter active" ] # [ inline ( always ) ] pub fn fact18 ( & self ) -> Fact18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact18R { bits } } # [ doc = "Bit 19 - Filter active" ] # [ inline ( always ) ] pub fn fact19 ( & self ) -> Fact19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact19R { bits } } # [ doc = "Bit 20 - Filter active" ] # [ inline ( always ) ] pub fn fact20 ( & self ) -> Fact20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact20R { bits } } # [ doc = "Bit 21 - Filter active" ] # [ inline ( always ) ] pub fn fact21 ( & self ) -> Fact21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact21R { bits } } # [ doc = "Bit 22 - Filter active" ] # [ inline ( always ) ] pub fn fact22 ( & self ) -> Fact22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact22R { bits } } # [ doc = "Bit 23 - Filter active" ] # [ inline ( always ) ] pub fn fact23 ( & self ) -> Fact23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact23R { bits } } # [ doc = "Bit 24 - Filter active" ] # [ inline ( always ) ] pub fn fact24 ( & self ) -> Fact24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact24R { bits } } # [ doc = "Bit 25 - Filter active" ] # [ inline ( always ) ] pub fn fact25 ( & self ) -> Fact25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact25R { bits } } # [ doc = "Bit 26 - Filter active" ] # [ inline ( always ) ] pub fn fact26 ( & self ) -> Fact26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact26R { bits } } # [ doc = "Bit 27 - Filter active" ] # [ inline ( always ) ] pub fn fact27 ( & self ) -> Fact27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fact27R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter active" ] # [ inline ( always ) ] pub fn fact0 ( & mut self ) -> _Fact0W { _Fact0W { w : self } } # [ doc = "Bit 1 - Filter active" ] # [ inline ( always ) ] pub fn fact1 ( & mut self ) -> _Fact1W { _Fact1W { w : self } } # [ doc = "Bit 2 - Filter active" ] # [ inline ( always ) ] pub fn fact2 ( & mut self ) -> _Fact2W { _Fact2W { w : self } } # [ doc = "Bit 3 - Filter active" ] # [ inline ( always ) ] pub fn fact3 ( & mut self ) -> _Fact3W { _Fact3W { w : self } } # [ doc = "Bit 4 - Filter active" ] # [ inline ( always ) ] pub fn fact4 ( & mut self ) -> _Fact4W { _Fact4W { w : self } } # [ doc = "Bit 5 - Filter active" ] # [ inline ( always ) ] pub fn fact5 ( & mut self ) -> _Fact5W { _Fact5W { w : self } } # [ doc = "Bit 6 - Filter active" ] # [ inline ( always ) ] pub fn fact6 ( & mut self ) -> _Fact6W { _Fact6W { w : self } } # [ doc = "Bit 7 - Filter active" ] # [ inline ( always ) ] pub fn fact7 ( & mut self ) -> _Fact7W { _Fact7W { w : self } } # [ doc = "Bit 8 - Filter active" ] # [ inline ( always ) ] pub fn fact8 ( & mut self ) -> _Fact8W { _Fact8W { w : self } } # [ doc = "Bit 9 - Filter active" ] # [ inline ( always ) ] pub fn fact9 ( & mut self ) -> _Fact9W { _Fact9W { w : self } } # [ doc = "Bit 10 - Filter active" ] # [ inline ( always ) ] pub fn fact10 ( & mut self ) -> _Fact10W { _Fact10W { w : self } } # [ doc = "Bit 11 - Filter active" ] # [ inline ( always ) ] pub fn fact11 ( & mut self ) -> _Fact11W { _Fact11W { w : self } } # [ doc = "Bit 12 - Filter active" ] # [ inline ( always ) ] pub fn fact12 ( & mut self ) -> _Fact12W { _Fact12W { w : self } } # [ doc = "Bit 13 - Filter active" ] # [ inline ( always ) ] pub fn fact13 ( & mut self ) -> _Fact13W { _Fact13W { w : self } } # [ doc = "Bit 14 - Filter active" ] # [ inline ( always ) ] pub fn fact14 ( & mut self ) -> _Fact14W { _Fact14W { w : self } } # [ doc = "Bit 15 - Filter active" ] # [ inline ( always ) ] pub fn fact15 ( & mut self ) -> _Fact15W { _Fact15W { w : self } } # [ doc = "Bit 16 - Filter active" ] # [ inline ( always ) ] pub fn fact16 ( & mut self ) -> _Fact16W { _Fact16W { w : self } } # [ doc = "Bit 17 - Filter active" ] # [ inline ( always ) ] pub fn fact17 ( & mut self ) -> _Fact17W { _Fact17W { w : self } } # [ doc = "Bit 18 - Filter active" ] # [ inline ( always ) ] pub fn fact18 ( & mut self ) -> _Fact18W { _Fact18W { w : self } } # [ doc = "Bit 19 - Filter active" ] # [ inline ( always ) ] pub fn fact19 ( & mut self ) -> _Fact19W { _Fact19W { w : self } } # [ doc = "Bit 20 - Filter active" ] # [ inline ( always ) ] pub fn fact20 ( & mut self ) -> _Fact20W { _Fact20W { w : self } } # [ doc = "Bit 21 - Filter active" ] # [ inline ( always ) ] pub fn fact21 ( & mut self ) -> _Fact21W { _Fact21W { w : self } } # [ doc = "Bit 22 - Filter active" ] # [ inline ( always ) ] pub fn fact22 ( & mut self ) -> _Fact22W { _Fact22W { w : self } } # [ doc = "Bit 23 - Filter active" ] # [ inline ( always ) ] pub fn fact23 ( & mut self ) -> _Fact23W { _Fact23W { w : self } } # [ doc = "Bit 24 - Filter active" ] # [ inline ( always ) ] pub fn fact24 ( & mut self ) -> _Fact24W { _Fact24W { w : self } } # [ doc = "Bit 25 - Filter active" ] # [ inline ( always ) ] pub fn fact25 ( & mut self ) -> _Fact25W { _Fact25W { w : self } } # [ doc = "Bit 26 - Filter active" ] # [ inline ( always ) ] pub fn fact26 ( & mut self ) -> _Fact26W { _Fact26W { w : self } } # [ doc = "Bit 27 - Filter active" ] # [ inline ( always ) ] pub fn fact27 ( & mut self ) -> _Fact27W { _Fact27W { w : self } } } } # [ doc = "Filter bank 0 register 1" ] pub struct F0r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 0 register 1" ] pub mod f0r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F0r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 0 register 2" ] pub struct F0r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 0 register 2" ] pub mod f0r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F0r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 1 register 1" ] pub struct F1r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 1 register 1" ] pub mod f1r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F1r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 1 register 2" ] pub struct F1r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 1 register 2" ] pub mod f1r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F1r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 2 register 1" ] pub struct F2r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 2 register 1" ] pub mod f2r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F2r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 2 register 2" ] pub struct F2r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 2 register 2" ] pub mod f2r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F2r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 3 register 1" ] pub struct F3r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 3 register 1" ] pub mod f3r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F3r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 3 register 2" ] pub struct F3r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 3 register 2" ] pub mod f3r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F3r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 4 register 1" ] pub struct F4r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 4 register 1" ] pub mod f4r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F4r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 4 register 2" ] pub struct F4r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 4 register 2" ] pub mod f4r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F4r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 5 register 1" ] pub struct F5r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 5 register 1" ] pub mod f5r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F5r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 5 register 2" ] pub struct F5r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 5 register 2" ] pub mod f5r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F5r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 6 register 1" ] pub struct F6r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 6 register 1" ] pub mod f6r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F6r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 6 register 2" ] pub struct F6r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 6 register 2" ] pub mod f6r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F6r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 7 register 1" ] pub struct F7r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 7 register 1" ] pub mod f7r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F7r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 7 register 2" ] pub struct F7r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 7 register 2" ] pub mod f7r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F7r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 8 register 1" ] pub struct F8r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 8 register 1" ] pub mod f8r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F8r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 8 register 2" ] pub struct F8r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 8 register 2" ] pub mod f8r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F8r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 9 register 1" ] pub struct F9r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 9 register 1" ] pub mod f9r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F9r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 9 register 2" ] pub struct F9r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 9 register 2" ] pub mod f9r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F9r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 10 register 1" ] pub struct F10r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 10 register 1" ] pub mod f10r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F10r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 10 register 2" ] pub struct F10r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 10 register 2" ] pub mod f10r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F10r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 11 register 1" ] pub struct F11r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 11 register 1" ] pub mod f11r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F11r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 11 register 2" ] pub struct F11r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 11 register 2" ] pub mod f11r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F11r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 4 register 1" ] pub struct F12r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 4 register 1" ] pub mod f12r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F12r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 12 register 2" ] pub struct F12r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 12 register 2" ] pub mod f12r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F12r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 13 register 1" ] pub struct F13r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 13 register 1" ] pub mod f13r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F13r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 13 register 2" ] pub struct F13r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 13 register 2" ] pub mod f13r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F13r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 14 register 1" ] pub struct F14r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 14 register 1" ] pub mod f14r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F14r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 14 register 2" ] pub struct F14r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 14 register 2" ] pub mod f14r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F14r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 15 register 1" ] pub struct F15r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 15 register 1" ] pub mod f15r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F15r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 15 register 2" ] pub struct F15r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 15 register 2" ] pub mod f15r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F15r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 16 register 1" ] pub struct F16r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 16 register 1" ] pub mod f16r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F16r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 16 register 2" ] pub struct F16r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 16 register 2" ] pub mod f16r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F16r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 17 register 1" ] pub struct F17r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 17 register 1" ] pub mod f17r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F17r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 17 register 2" ] pub struct F17r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 17 register 2" ] pub mod f17r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F17r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 18 register 1" ] pub struct F18r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 18 register 1" ] pub mod f18r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F18r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 18 register 2" ] pub struct F18r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 18 register 2" ] pub mod f18r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F18r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 19 register 1" ] pub struct F19r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 19 register 1" ] pub mod f19r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F19r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 19 register 2" ] pub struct F19r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 19 register 2" ] pub mod f19r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F19r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 20 register 1" ] pub struct F20r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 20 register 1" ] pub mod f20r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F20r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 20 register 2" ] pub struct F20r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 20 register 2" ] pub mod f20r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F20r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 21 register 1" ] pub struct F21r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 21 register 1" ] pub mod f21r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F21r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 21 register 2" ] pub struct F21r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 21 register 2" ] pub mod f21r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F21r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 22 register 1" ] pub struct F22r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 22 register 1" ] pub mod f22r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F22r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 22 register 2" ] pub struct F22r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 22 register 2" ] pub mod f22r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F22r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 23 register 1" ] pub struct F23r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 23 register 1" ] pub mod f23r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F23r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 23 register 2" ] pub struct F23r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 23 register 2" ] pub mod f23r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F23r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 24 register 1" ] pub struct F24r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 24 register 1" ] pub mod f24r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F24r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 24 register 2" ] pub struct F24r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 24 register 2" ] pub mod f24r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F24r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 25 register 1" ] pub struct F25r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 25 register 1" ] pub mod f25r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F25r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 25 register 2" ] pub struct F25r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 25 register 2" ] pub mod f25r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F25r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 26 register 1" ] pub struct F26r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 26 register 1" ] pub mod f26r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F26r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 26 register 2" ] pub struct F26r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 26 register 2" ] pub mod f26r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F26r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 27 register 1" ] pub struct F27r1 { register : VolatileCell < u32 > } # [ doc = "Filter bank 27 register 1" ] pub mod f27r1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F27r1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } # [ doc = "Filter bank 27 register 2" ] pub struct F27r2 { register : VolatileCell < u32 > } # [ doc = "Filter bank 27 register 2" ] pub mod f27r2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: F27r2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Fb0R { bits : u8 , } impl Fb0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb1R { bits : u8 , } impl Fb1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb2R { bits : u8 , } impl Fb2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb3R { bits : u8 , } impl Fb3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb4R { bits : u8 , } impl Fb4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb5R { bits : u8 , } impl Fb5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb6R { bits : u8 , } impl Fb6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb7R { bits : u8 , } impl Fb7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb8R { bits : u8 , } impl Fb8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb9R { bits : u8 , } impl Fb9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb10R { bits : u8 , } impl Fb10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb11R { bits : u8 , } impl Fb11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb12R { bits : u8 , } impl Fb12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb13R { bits : u8 , } impl Fb13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb14R { bits : u8 , } impl Fb14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb15R { bits : u8 , } impl Fb15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb16R { bits : u8 , } impl Fb16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb17R { bits : u8 , } impl Fb17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb18R { bits : u8 , } impl Fb18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb19R { bits : u8 , } impl Fb19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb20R { bits : u8 , } impl Fb20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb21R { bits : u8 , } impl Fb21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb22R { bits : u8 , } impl Fb22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb23R { bits : u8 , } impl Fb23R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb24R { bits : u8 , } impl Fb24R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb25R { bits : u8 , } impl Fb25R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb26R { bits : u8 , } impl Fb26R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb27R { bits : u8 , } impl Fb27R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb28R { bits : u8 , } impl Fb28R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb29R { bits : u8 , } impl Fb29R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb30R { bits : u8 , } impl Fb30R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Fb31R { bits : u8 , } impl Fb31R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Fb0W < 'a > { w : & 'a mut W , } impl < 'a > _Fb0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb1W < 'a > { w : & 'a mut W , } impl < 'a > _Fb1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb2W < 'a > { w : & 'a mut W , } impl < 'a > _Fb2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb3W < 'a > { w : & 'a mut W , } impl < 'a > _Fb3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb4W < 'a > { w : & 'a mut W , } impl < 'a > _Fb4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb5W < 'a > { w : & 'a mut W , } impl < 'a > _Fb5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb6W < 'a > { w : & 'a mut W , } impl < 'a > _Fb6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb7W < 'a > { w : & 'a mut W , } impl < 'a > _Fb7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb8W < 'a > { w : & 'a mut W , } impl < 'a > _Fb8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb9W < 'a > { w : & 'a mut W , } impl < 'a > _Fb9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb10W < 'a > { w : & 'a mut W , } impl < 'a > _Fb10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb11W < 'a > { w : & 'a mut W , } impl < 'a > _Fb11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb12W < 'a > { w : & 'a mut W , } impl < 'a > _Fb12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb13W < 'a > { w : & 'a mut W , } impl < 'a > _Fb13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb14W < 'a > { w : & 'a mut W , } impl < 'a > _Fb14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb15W < 'a > { w : & 'a mut W , } impl < 'a > _Fb15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb16W < 'a > { w : & 'a mut W , } impl < 'a > _Fb16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb17W < 'a > { w : & 'a mut W , } impl < 'a > _Fb17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb18W < 'a > { w : & 'a mut W , } impl < 'a > _Fb18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb19W < 'a > { w : & 'a mut W , } impl < 'a > _Fb19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb20W < 'a > { w : & 'a mut W , } impl < 'a > _Fb20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb21W < 'a > { w : & 'a mut W , } impl < 'a > _Fb21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb22W < 'a > { w : & 'a mut W , } impl < 'a > _Fb22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb23W < 'a > { w : & 'a mut W , } impl < 'a > _Fb23W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb24W < 'a > { w : & 'a mut W , } impl < 'a > _Fb24W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb25W < 'a > { w : & 'a mut W , } impl < 'a > _Fb25W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb26W < 'a > { w : & 'a mut W , } impl < 'a > _Fb26W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb27W < 'a > { w : & 'a mut W , } impl < 'a > _Fb27W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb28W < 'a > { w : & 'a mut W , } impl < 'a > _Fb28W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb29W < 'a > { w : & 'a mut W , } impl < 'a > _Fb29W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb30W < 'a > { w : & 'a mut W , } impl < 'a > _Fb30W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Fb31W < 'a > { w : & 'a mut W , } impl < 'a > _Fb31W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & self ) -> Fb0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb0R { bits } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & self ) -> Fb1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb1R { bits } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & self ) -> Fb2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb2R { bits } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & self ) -> Fb3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb3R { bits } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & self ) -> Fb4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb4R { bits } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & self ) -> Fb5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb5R { bits } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & self ) -> Fb6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb6R { bits } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & self ) -> Fb7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb7R { bits } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & self ) -> Fb8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb8R { bits } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & self ) -> Fb9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb9R { bits } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & self ) -> Fb10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb10R { bits } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & self ) -> Fb11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb11R { bits } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & self ) -> Fb12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb12R { bits } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & self ) -> Fb13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb13R { bits } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & self ) -> Fb14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb14R { bits } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & self ) -> Fb15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb15R { bits } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & self ) -> Fb16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb16R { bits } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & self ) -> Fb17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb17R { bits } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & self ) -> Fb18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb18R { bits } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & self ) -> Fb19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb19R { bits } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & self ) -> Fb20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb20R { bits } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & self ) -> Fb21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb21R { bits } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & self ) -> Fb22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb22R { bits } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & self ) -> Fb23R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb23R { bits } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & self ) -> Fb24R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb24R { bits } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & self ) -> Fb25R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb25R { bits } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & self ) -> Fb26R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb26R { bits } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & self ) -> Fb27R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb27R { bits } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & self ) -> Fb28R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb28R { bits } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & self ) -> Fb29R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb29R { bits } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & self ) -> Fb30R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb30R { bits } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & self ) -> Fb31R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Fb31R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Filter bits" ] # [ inline ( always ) ] pub fn fb0 ( & mut self ) -> _Fb0W { _Fb0W { w : self } } # [ doc = "Bit 1 - Filter bits" ] # [ inline ( always ) ] pub fn fb1 ( & mut self ) -> _Fb1W { _Fb1W { w : self } } # [ doc = "Bit 2 - Filter bits" ] # [ inline ( always ) ] pub fn fb2 ( & mut self ) -> _Fb2W { _Fb2W { w : self } } # [ doc = "Bit 3 - Filter bits" ] # [ inline ( always ) ] pub fn fb3 ( & mut self ) -> _Fb3W { _Fb3W { w : self } } # [ doc = "Bit 4 - Filter bits" ] # [ inline ( always ) ] pub fn fb4 ( & mut self ) -> _Fb4W { _Fb4W { w : self } } # [ doc = "Bit 5 - Filter bits" ] # [ inline ( always ) ] pub fn fb5 ( & mut self ) -> _Fb5W { _Fb5W { w : self } } # [ doc = "Bit 6 - Filter bits" ] # [ inline ( always ) ] pub fn fb6 ( & mut self ) -> _Fb6W { _Fb6W { w : self } } # [ doc = "Bit 7 - Filter bits" ] # [ inline ( always ) ] pub fn fb7 ( & mut self ) -> _Fb7W { _Fb7W { w : self } } # [ doc = "Bit 8 - Filter bits" ] # [ inline ( always ) ] pub fn fb8 ( & mut self ) -> _Fb8W { _Fb8W { w : self } } # [ doc = "Bit 9 - Filter bits" ] # [ inline ( always ) ] pub fn fb9 ( & mut self ) -> _Fb9W { _Fb9W { w : self } } # [ doc = "Bit 10 - Filter bits" ] # [ inline ( always ) ] pub fn fb10 ( & mut self ) -> _Fb10W { _Fb10W { w : self } } # [ doc = "Bit 11 - Filter bits" ] # [ inline ( always ) ] pub fn fb11 ( & mut self ) -> _Fb11W { _Fb11W { w : self } } # [ doc = "Bit 12 - Filter bits" ] # [ inline ( always ) ] pub fn fb12 ( & mut self ) -> _Fb12W { _Fb12W { w : self } } # [ doc = "Bit 13 - Filter bits" ] # [ inline ( always ) ] pub fn fb13 ( & mut self ) -> _Fb13W { _Fb13W { w : self } } # [ doc = "Bit 14 - Filter bits" ] # [ inline ( always ) ] pub fn fb14 ( & mut self ) -> _Fb14W { _Fb14W { w : self } } # [ doc = "Bit 15 - Filter bits" ] # [ inline ( always ) ] pub fn fb15 ( & mut self ) -> _Fb15W { _Fb15W { w : self } } # [ doc = "Bit 16 - Filter bits" ] # [ inline ( always ) ] pub fn fb16 ( & mut self ) -> _Fb16W { _Fb16W { w : self } } # [ doc = "Bit 17 - Filter bits" ] # [ inline ( always ) ] pub fn fb17 ( & mut self ) -> _Fb17W { _Fb17W { w : self } } # [ doc = "Bit 18 - Filter bits" ] # [ inline ( always ) ] pub fn fb18 ( & mut self ) -> _Fb18W { _Fb18W { w : self } } # [ doc = "Bit 19 - Filter bits" ] # [ inline ( always ) ] pub fn fb19 ( & mut self ) -> _Fb19W { _Fb19W { w : self } } # [ doc = "Bit 20 - Filter bits" ] # [ inline ( always ) ] pub fn fb20 ( & mut self ) -> _Fb20W { _Fb20W { w : self } } # [ doc = "Bit 21 - Filter bits" ] # [ inline ( always ) ] pub fn fb21 ( & mut self ) -> _Fb21W { _Fb21W { w : self } } # [ doc = "Bit 22 - Filter bits" ] # [ inline ( always ) ] pub fn fb22 ( & mut self ) -> _Fb22W { _Fb22W { w : self } } # [ doc = "Bit 23 - Filter bits" ] # [ inline ( always ) ] pub fn fb23 ( & mut self ) -> _Fb23W { _Fb23W { w : self } } # [ doc = "Bit 24 - Filter bits" ] # [ inline ( always ) ] pub fn fb24 ( & mut self ) -> _Fb24W { _Fb24W { w : self } } # [ doc = "Bit 25 - Filter bits" ] # [ inline ( always ) ] pub fn fb25 ( & mut self ) -> _Fb25W { _Fb25W { w : self } } # [ doc = "Bit 26 - Filter bits" ] # [ inline ( always ) ] pub fn fb26 ( & mut self ) -> _Fb26W { _Fb26W { w : self } } # [ doc = "Bit 27 - Filter bits" ] # [ inline ( always ) ] pub fn fb27 ( & mut self ) -> _Fb27W { _Fb27W { w : self } } # [ doc = "Bit 28 - Filter bits" ] # [ inline ( always ) ] pub fn fb28 ( & mut self ) -> _Fb28W { _Fb28W { w : self } } # [ doc = "Bit 29 - Filter bits" ] # [ inline ( always ) ] pub fn fb29 ( & mut self ) -> _Fb29W { _Fb29W { w : self } } # [ doc = "Bit 30 - Filter bits" ] # [ inline ( always ) ] pub fn fb30 ( & mut self ) -> _Fb30W { _Fb30W { w : self } } # [ doc = "Bit 31 - Filter bits" ] # [ inline ( always ) ] pub fn fb31 ( & mut self ) -> _Fb31W { _Fb31W { w : self } } } } } # [ doc = "Controller area network" ] pub struct Can1 { register_block : can1 :: RegisterBlock } impl Deref for Can1 { type Target = can1 :: RegisterBlock ; fn deref ( & self ) -> & can1 :: RegisterBlock { & self . register_block } } # [ doc = "CAN2" ] pub const CAN2 : Peripheral < Can2 > = unsafe { Peripheral :: new ( 1073768448 ) } ; # [ doc = r" Register block" ] pub struct Can2 { register_block : can1 :: RegisterBlock } impl Deref for Can2 { type Target = can1 :: RegisterBlock ; fn deref ( & self ) -> & can1 :: RegisterBlock { & self . register_block } } # [ doc = "FLASH" ] pub const FLASH : Peripheral < Flash > = unsafe { Peripheral :: new ( 1073888256 ) } ; # [ doc = "FLASH" ] pub mod flash { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Flash access control register" ] pub acr : Acr , # [ doc = "0x04 - Flash key register" ] pub keyr : Keyr , # [ doc = "0x08 - Flash option key register" ] pub optkeyr : Optkeyr , # [ doc = "0x0c - Status register" ] pub sr : Sr , # [ doc = "0x10 - Control register" ] pub cr : Cr , # [ doc = "0x14 - Flash option control register" ] pub optcr : Optcr , } # [ doc = "Flash access control register" ] pub struct Acr { register : VolatileCell < u32 > } # [ doc = "Flash access control register" ] pub mod acr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Acr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct LatencyR { bits : u8 , } impl LatencyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PrftenR { bits : u8 , } impl PrftenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IcenR { bits : u8 , } impl IcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcenR { bits : u8 , } impl DcenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DcrstR { bits : u8 , } impl DcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _LatencyW < 'a > { w : & 'a mut W , } impl < 'a > _LatencyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PrftenW < 'a > { w : & 'a mut W , } impl < 'a > _PrftenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcenW < 'a > { w : & 'a mut W , } impl < 'a > _IcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcenW < 'a > { w : & 'a mut W , } impl < 'a > _DcenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IcrstW < 'a > { w : & 'a mut W , } impl < 'a > _IcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DcrstW < 'a > { w : & 'a mut W , } impl < 'a > _DcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:2 - Latency" ] # [ inline ( always ) ] pub fn latency ( & self ) -> LatencyR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LatencyR { bits } } # [ doc = "Bit 8 - Prefetch enable" ] # [ inline ( always ) ] pub fn prften ( & self ) -> PrftenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrftenR { bits } } # [ doc = "Bit 9 - Instruction cache enable" ] # [ inline ( always ) ] pub fn icen ( & self ) -> IcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IcenR { bits } } # [ doc = "Bit 10 - Data cache enable" ] # [ inline ( always ) ] pub fn dcen ( & self ) -> DcenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcenR { bits } } # [ doc = "Bit 12 - Data cache reset" ] # [ inline ( always ) ] pub fn dcrst ( & self ) -> DcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DcrstR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:2 - Latency" ] # [ inline ( always ) ] pub fn latency ( & mut self ) -> _LatencyW { _LatencyW { w : self } } # [ doc = "Bit 8 - Prefetch enable" ] # [ inline ( always ) ] pub fn prften ( & mut self ) -> _PrftenW { _PrftenW { w : self } } # [ doc = "Bit 9 - Instruction cache enable" ] # [ inline ( always ) ] pub fn icen ( & mut self ) -> _IcenW { _IcenW { w : self } } # [ doc = "Bit 10 - Data cache enable" ] # [ inline ( always ) ] pub fn dcen ( & mut self ) -> _DcenW { _DcenW { w : self } } # [ doc = "Bit 11 - Instruction cache reset" ] # [ inline ( always ) ] pub fn icrst ( & mut self ) -> _IcrstW { _IcrstW { w : self } } # [ doc = "Bit 12 - Data cache reset" ] # [ inline ( always ) ] pub fn dcrst ( & mut self ) -> _DcrstW { _DcrstW { w : self } } } } # [ doc = "Flash key register" ] pub struct Keyr { register : VolatileCell < u32 > } # [ doc = "Flash key register" ] pub mod keyr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Keyr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _KeyW < 'a > { w : & 'a mut W , } impl < 'a > _KeyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - FPEC key" ] # [ inline ( always ) ] pub fn key ( & mut self ) -> _KeyW { _KeyW { w : self } } } } # [ doc = "Flash option key register" ] pub struct Optkeyr { register : VolatileCell < u32 > } # [ doc = "Flash option key register" ] pub mod optkeyr { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Optkeyr { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _OptkeyW < 'a > { w : & 'a mut W , } impl < 'a > _OptkeyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Option byte key" ] # [ inline ( always ) ] pub fn optkey ( & mut self ) -> _OptkeyW { _OptkeyW { w : self } } } } # [ doc = "Status register" ] pub struct Sr { register : VolatileCell < u32 > } # [ doc = "Status register" ] pub mod sr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Sr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct EopR { bits : u8 , } impl EopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OperrR { bits : u8 , } impl OperrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WrperrR { bits : u8 , } impl WrperrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PgaerrR { bits : u8 , } impl PgaerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PgperrR { bits : u8 , } impl PgperrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PgserrR { bits : u8 , } impl PgserrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BsyR { bits : u8 , } impl BsyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _EopW < 'a > { w : & 'a mut W , } impl < 'a > _EopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OperrW < 'a > { w : & 'a mut W , } impl < 'a > _OperrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WrperrW < 'a > { w : & 'a mut W , } impl < 'a > _WrperrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PgaerrW < 'a > { w : & 'a mut W , } impl < 'a > _PgaerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PgperrW < 'a > { w : & 'a mut W , } impl < 'a > _PgperrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PgserrW < 'a > { w : & 'a mut W , } impl < 'a > _PgserrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - End of operation" ] # [ inline ( always ) ] pub fn eop ( & self ) -> EopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopR { bits } } # [ doc = "Bit 1 - Operation error" ] # [ inline ( always ) ] pub fn operr ( & self ) -> OperrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OperrR { bits } } # [ doc = "Bit 4 - Write protection error" ] # [ inline ( always ) ] pub fn wrperr ( & self ) -> WrperrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WrperrR { bits } } # [ doc = "Bit 5 - Programming alignment error" ] # [ inline ( always ) ] pub fn pgaerr ( & self ) -> PgaerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PgaerrR { bits } } # [ doc = "Bit 6 - Programming parallelism error" ] # [ inline ( always ) ] pub fn pgperr ( & self ) -> PgperrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PgperrR { bits } } # [ doc = "Bit 7 - Programming sequence error" ] # [ inline ( always ) ] pub fn pgserr ( & self ) -> PgserrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PgserrR { bits } } # [ doc = "Bit 16 - Busy" ] # [ inline ( always ) ] pub fn bsy ( & self ) -> BsyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BsyR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - End of operation" ] # [ inline ( always ) ] pub fn eop ( & mut self ) -> _EopW { _EopW { w : self } } # [ doc = "Bit 1 - Operation error" ] # [ inline ( always ) ] pub fn operr ( & mut self ) -> _OperrW { _OperrW { w : self } } # [ doc = "Bit 4 - Write protection error" ] # [ inline ( always ) ] pub fn wrperr ( & mut self ) -> _WrperrW { _WrperrW { w : self } } # [ doc = "Bit 5 - Programming alignment error" ] # [ inline ( always ) ] pub fn pgaerr ( & mut self ) -> _PgaerrW { _PgaerrW { w : self } } # [ doc = "Bit 6 - Programming parallelism error" ] # [ inline ( always ) ] pub fn pgperr ( & mut self ) -> _PgperrW { _PgperrW { w : self } } # [ doc = "Bit 7 - Programming sequence error" ] # [ inline ( always ) ] pub fn pgserr ( & mut self ) -> _PgserrW { _PgserrW { w : self } } } } # [ doc = "Control register" ] pub struct Cr { register : VolatileCell < u32 > } # [ doc = "Control register" ] pub mod cr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Cr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PgR { bits : u8 , } impl PgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SerR { bits : u8 , } impl SerR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MerR { bits : u8 , } impl MerR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnbR { bits : u8 , } impl SnbR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsizeR { bits : u8 , } impl PsizeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StrtR { bits : u8 , } impl StrtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EopieR { bits : u8 , } impl EopieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ErrieR { bits : u8 , } impl ErrieR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LockR { bits : u8 , } impl LockR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PgW < 'a > { w : & 'a mut W , } impl < 'a > _PgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SerW < 'a > { w : & 'a mut W , } impl < 'a > _SerW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _MerW < 'a > { w : & 'a mut W , } impl < 'a > _MerW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnbW < 'a > { w : & 'a mut W , } impl < 'a > _SnbW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsizeW < 'a > { w : & 'a mut W , } impl < 'a > _PsizeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StrtW < 'a > { w : & 'a mut W , } impl < 'a > _StrtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EopieW < 'a > { w : & 'a mut W , } impl < 'a > _EopieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ErrieW < 'a > { w : & 'a mut W , } impl < 'a > _ErrieW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LockW < 'a > { w : & 'a mut W , } impl < 'a > _LockW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Programming" ] # [ inline ( always ) ] pub fn pg ( & self ) -> PgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PgR { bits } } # [ doc = "Bit 1 - Sector Erase" ] # [ inline ( always ) ] pub fn ser ( & self ) -> SerR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SerR { bits } } # [ doc = "Bit 2 - Mass Erase" ] # [ inline ( always ) ] pub fn mer ( & self ) -> MerR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MerR { bits } } # [ doc = "Bits 3:6 - Sector number" ] # [ inline ( always ) ] pub fn snb ( & self ) -> SnbR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnbR { bits } } # [ doc = "Bits 8:9 - Program size" ] # [ inline ( always ) ] pub fn psize ( & self ) -> PsizeR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsizeR { bits } } # [ doc = "Bit 16 - Start" ] # [ inline ( always ) ] pub fn strt ( & self ) -> StrtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StrtR { bits } } # [ doc = "Bit 24 - End of operation interrupt enable" ] # [ inline ( always ) ] pub fn eopie ( & self ) -> EopieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopieR { bits } } # [ doc = "Bit 25 - Error interrupt enable" ] # [ inline ( always ) ] pub fn errie ( & self ) -> ErrieR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ErrieR { bits } } # [ doc = "Bit 31 - Lock" ] # [ inline ( always ) ] pub fn lock ( & self ) -> LockR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LockR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2147483648 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Programming" ] # [ inline ( always ) ] pub fn pg ( & mut self ) -> _PgW { _PgW { w : self } } # [ doc = "Bit 1 - Sector Erase" ] # [ inline ( always ) ] pub fn ser ( & mut self ) -> _SerW { _SerW { w : self } } # [ doc = "Bit 2 - Mass Erase" ] # [ inline ( always ) ] pub fn mer ( & mut self ) -> _MerW { _MerW { w : self } } # [ doc = "Bits 3:6 - Sector number" ] # [ inline ( always ) ] pub fn snb ( & mut self ) -> _SnbW { _SnbW { w : self } } # [ doc = "Bits 8:9 - Program size" ] # [ inline ( always ) ] pub fn psize ( & mut self ) -> _PsizeW { _PsizeW { w : self } } # [ doc = "Bit 16 - Start" ] # [ inline ( always ) ] pub fn strt ( & mut self ) -> _StrtW { _StrtW { w : self } } # [ doc = "Bit 24 - End of operation interrupt enable" ] # [ inline ( always ) ] pub fn eopie ( & mut self ) -> _EopieW { _EopieW { w : self } } # [ doc = "Bit 25 - Error interrupt enable" ] # [ inline ( always ) ] pub fn errie ( & mut self ) -> _ErrieW { _ErrieW { w : self } } # [ doc = "Bit 31 - Lock" ] # [ inline ( always ) ] pub fn lock ( & mut self ) -> _LockW { _LockW { w : self } } } } # [ doc = "Flash option control register" ] pub struct Optcr { register : VolatileCell < u32 > } # [ doc = "Flash option control register" ] pub mod optcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Optcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct OptlockR { bits : u8 , } impl OptlockR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OptstrtR { bits : u8 , } impl OptstrtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BorLevR { bits : u8 , } impl BorLevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WdgSwR { bits : u8 , } impl WdgSwR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NRstStopR { bits : u8 , } impl NRstStopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NRstStdbyR { bits : u8 , } impl NRstStdbyR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RdpR { bits : u8 , } impl RdpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NWrpR { bits : u16 , } impl NWrpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _OptlockW < 'a > { w : & 'a mut W , } impl < 'a > _OptlockW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OptstrtW < 'a > { w : & 'a mut W , } impl < 'a > _OptstrtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BorLevW < 'a > { w : & 'a mut W , } impl < 'a > _BorLevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WdgSwW < 'a > { w : & 'a mut W , } impl < 'a > _WdgSwW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NRstStopW < 'a > { w : & 'a mut W , } impl < 'a > _NRstStopW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NRstStdbyW < 'a > { w : & 'a mut W , } impl < 'a > _NRstStdbyW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RdpW < 'a > { w : & 'a mut W , } impl < 'a > _RdpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NWrpW < 'a > { w : & 'a mut W , } impl < 'a > _NWrpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Option lock" ] # [ inline ( always ) ] pub fn optlock ( & self ) -> OptlockR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OptlockR { bits } } # [ doc = "Bit 1 - Option start" ] # [ inline ( always ) ] pub fn optstrt ( & self ) -> OptstrtR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OptstrtR { bits } } # [ doc = "Bits 2:3 - BOR reset Level" ] # [ inline ( always ) ] pub fn bor_lev ( & self ) -> BorLevR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BorLevR { bits } } # [ doc = "Bit 5 - WDG_SW User option bytes" ] # [ inline ( always ) ] pub fn wdg_sw ( & self ) -> WdgSwR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WdgSwR { bits } } # [ doc = "Bit 6 - nRST_STOP User option bytes" ] # [ inline ( always ) ] pub fn n_rst_stop ( & self ) -> NRstStopR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NRstStopR { bits } } # [ doc = "Bit 7 - nRST_STDBY User option bytes" ] # [ inline ( always ) ] pub fn n_rst_stdby ( & self ) -> NRstStdbyR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NRstStdbyR { bits } } # [ doc = "Bits 8:15 - Read protect" ] # [ inline ( always ) ] pub fn rdp ( & self ) -> RdpR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RdpR { bits } } # [ doc = "Bits 16:27 - Not write protect" ] # [ inline ( always ) ] pub fn n_wrp ( & self ) -> NWrpR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NWrpR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 20 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Option lock" ] # [ inline ( always ) ] pub fn optlock ( & mut self ) -> _OptlockW { _OptlockW { w : self } } # [ doc = "Bit 1 - Option start" ] # [ inline ( always ) ] pub fn optstrt ( & mut self ) -> _OptstrtW { _OptstrtW { w : self } } # [ doc = "Bits 2:3 - BOR reset Level" ] # [ inline ( always ) ] pub fn bor_lev ( & mut self ) -> _BorLevW { _BorLevW { w : self } } # [ doc = "Bit 5 - WDG_SW User option bytes" ] # [ inline ( always ) ] pub fn wdg_sw ( & mut self ) -> _WdgSwW { _WdgSwW { w : self } } # [ doc = "Bit 6 - nRST_STOP User option bytes" ] # [ inline ( always ) ] pub fn n_rst_stop ( & mut self ) -> _NRstStopW { _NRstStopW { w : self } } # [ doc = "Bit 7 - nRST_STDBY User option bytes" ] # [ inline ( always ) ] pub fn n_rst_stdby ( & mut self ) -> _NRstStdbyW { _NRstStdbyW { w : self } } # [ doc = "Bits 8:15 - Read protect" ] # [ inline ( always ) ] pub fn rdp ( & mut self ) -> _RdpW { _RdpW { w : self } } # [ doc = "Bits 16:27 - Not write protect" ] # [ inline ( always ) ] pub fn n_wrp ( & mut self ) -> _NWrpW { _NWrpW { w : self } } } } } # [ doc = "FLASH" ] pub struct Flash { register_block : flash :: RegisterBlock } impl Deref for Flash { type Target = flash :: RegisterBlock ; fn deref ( & self ) -> & flash :: RegisterBlock { & self . register_block } } # [ doc = "External interrupt/event controller" ] pub const EXTI : Peripheral < Exti > = unsafe { Peripheral :: new ( 1073822720 ) } ; # [ doc = "External interrupt/event controller" ] pub mod exti { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Interrupt mask register (EXTI_IMR)" ] pub imr : Imr , # [ doc = "0x04 - Event mask register (EXTI_EMR)" ] pub emr : Emr , # [ doc = "0x08 - Rising Trigger selection register (EXTI_RTSR)" ] pub rtsr : Rtsr , # [ doc = "0x0c - Falling Trigger selection register (EXTI_FTSR)" ] pub ftsr : Ftsr , # [ doc = "0x10 - Software interrupt event register (EXTI_SWIER)" ] pub swier : Swier , # [ doc = "0x14 - Pending register (EXTI_PR)" ] pub pr : Pr , } # [ doc = "Interrupt mask register (EXTI_IMR)" ] pub struct Imr { register : VolatileCell < u32 > } # [ doc = "Interrupt mask register (EXTI_IMR)" ] pub mod imr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Imr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Mr0R { bits : u8 , } impl Mr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr1R { bits : u8 , } impl Mr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr2R { bits : u8 , } impl Mr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr3R { bits : u8 , } impl Mr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr4R { bits : u8 , } impl Mr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr5R { bits : u8 , } impl Mr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr6R { bits : u8 , } impl Mr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr7R { bits : u8 , } impl Mr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr8R { bits : u8 , } impl Mr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr9R { bits : u8 , } impl Mr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr10R { bits : u8 , } impl Mr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr11R { bits : u8 , } impl Mr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr12R { bits : u8 , } impl Mr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr13R { bits : u8 , } impl Mr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr14R { bits : u8 , } impl Mr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr15R { bits : u8 , } impl Mr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr16R { bits : u8 , } impl Mr16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr17R { bits : u8 , } impl Mr17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr18R { bits : u8 , } impl Mr18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr19R { bits : u8 , } impl Mr19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr20R { bits : u8 , } impl Mr20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr21R { bits : u8 , } impl Mr21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr22R { bits : u8 , } impl Mr22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Mr0W < 'a > { w : & 'a mut W , } impl < 'a > _Mr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr1W < 'a > { w : & 'a mut W , } impl < 'a > _Mr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr2W < 'a > { w : & 'a mut W , } impl < 'a > _Mr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr3W < 'a > { w : & 'a mut W , } impl < 'a > _Mr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr4W < 'a > { w : & 'a mut W , } impl < 'a > _Mr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr5W < 'a > { w : & 'a mut W , } impl < 'a > _Mr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr6W < 'a > { w : & 'a mut W , } impl < 'a > _Mr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr7W < 'a > { w : & 'a mut W , } impl < 'a > _Mr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr8W < 'a > { w : & 'a mut W , } impl < 'a > _Mr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr9W < 'a > { w : & 'a mut W , } impl < 'a > _Mr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr10W < 'a > { w : & 'a mut W , } impl < 'a > _Mr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr11W < 'a > { w : & 'a mut W , } impl < 'a > _Mr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr12W < 'a > { w : & 'a mut W , } impl < 'a > _Mr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr13W < 'a > { w : & 'a mut W , } impl < 'a > _Mr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr14W < 'a > { w : & 'a mut W , } impl < 'a > _Mr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr15W < 'a > { w : & 'a mut W , } impl < 'a > _Mr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr16W < 'a > { w : & 'a mut W , } impl < 'a > _Mr16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr17W < 'a > { w : & 'a mut W , } impl < 'a > _Mr17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr18W < 'a > { w : & 'a mut W , } impl < 'a > _Mr18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr19W < 'a > { w : & 'a mut W , } impl < 'a > _Mr19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr20W < 'a > { w : & 'a mut W , } impl < 'a > _Mr20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr21W < 'a > { w : & 'a mut W , } impl < 'a > _Mr21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr22W < 'a > { w : & 'a mut W , } impl < 'a > _Mr22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Interrupt Mask on line 0" ] # [ inline ( always ) ] pub fn mr0 ( & self ) -> Mr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr0R { bits } } # [ doc = "Bit 1 - Interrupt Mask on line 1" ] # [ inline ( always ) ] pub fn mr1 ( & self ) -> Mr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr1R { bits } } # [ doc = "Bit 2 - Interrupt Mask on line 2" ] # [ inline ( always ) ] pub fn mr2 ( & self ) -> Mr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr2R { bits } } # [ doc = "Bit 3 - Interrupt Mask on line 3" ] # [ inline ( always ) ] pub fn mr3 ( & self ) -> Mr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr3R { bits } } # [ doc = "Bit 4 - Interrupt Mask on line 4" ] # [ inline ( always ) ] pub fn mr4 ( & self ) -> Mr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr4R { bits } } # [ doc = "Bit 5 - Interrupt Mask on line 5" ] # [ inline ( always ) ] pub fn mr5 ( & self ) -> Mr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr5R { bits } } # [ doc = "Bit 6 - Interrupt Mask on line 6" ] # [ inline ( always ) ] pub fn mr6 ( & self ) -> Mr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr6R { bits } } # [ doc = "Bit 7 - Interrupt Mask on line 7" ] # [ inline ( always ) ] pub fn mr7 ( & self ) -> Mr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr7R { bits } } # [ doc = "Bit 8 - Interrupt Mask on line 8" ] # [ inline ( always ) ] pub fn mr8 ( & self ) -> Mr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr8R { bits } } # [ doc = "Bit 9 - Interrupt Mask on line 9" ] # [ inline ( always ) ] pub fn mr9 ( & self ) -> Mr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr9R { bits } } # [ doc = "Bit 10 - Interrupt Mask on line 10" ] # [ inline ( always ) ] pub fn mr10 ( & self ) -> Mr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr10R { bits } } # [ doc = "Bit 11 - Interrupt Mask on line 11" ] # [ inline ( always ) ] pub fn mr11 ( & self ) -> Mr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr11R { bits } } # [ doc = "Bit 12 - Interrupt Mask on line 12" ] # [ inline ( always ) ] pub fn mr12 ( & self ) -> Mr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr12R { bits } } # [ doc = "Bit 13 - Interrupt Mask on line 13" ] # [ inline ( always ) ] pub fn mr13 ( & self ) -> Mr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr13R { bits } } # [ doc = "Bit 14 - Interrupt Mask on line 14" ] # [ inline ( always ) ] pub fn mr14 ( & self ) -> Mr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr14R { bits } } # [ doc = "Bit 15 - Interrupt Mask on line 15" ] # [ inline ( always ) ] pub fn mr15 ( & self ) -> Mr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr15R { bits } } # [ doc = "Bit 16 - Interrupt Mask on line 16" ] # [ inline ( always ) ] pub fn mr16 ( & self ) -> Mr16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr16R { bits } } # [ doc = "Bit 17 - Interrupt Mask on line 17" ] # [ inline ( always ) ] pub fn mr17 ( & self ) -> Mr17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr17R { bits } } # [ doc = "Bit 18 - Interrupt Mask on line 18" ] # [ inline ( always ) ] pub fn mr18 ( & self ) -> Mr18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr18R { bits } } # [ doc = "Bit 19 - Interrupt Mask on line 19" ] # [ inline ( always ) ] pub fn mr19 ( & self ) -> Mr19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr19R { bits } } # [ doc = "Bit 20 - Interrupt Mask on line 20" ] # [ inline ( always ) ] pub fn mr20 ( & self ) -> Mr20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr20R { bits } } # [ doc = "Bit 21 - Interrupt Mask on line 21" ] # [ inline ( always ) ] pub fn mr21 ( & self ) -> Mr21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr21R { bits } } # [ doc = "Bit 22 - Interrupt Mask on line 22" ] # [ inline ( always ) ] pub fn mr22 ( & self ) -> Mr22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Interrupt Mask on line 0" ] # [ inline ( always ) ] pub fn mr0 ( & mut self ) -> _Mr0W { _Mr0W { w : self } } # [ doc = "Bit 1 - Interrupt Mask on line 1" ] # [ inline ( always ) ] pub fn mr1 ( & mut self ) -> _Mr1W { _Mr1W { w : self } } # [ doc = "Bit 2 - Interrupt Mask on line 2" ] # [ inline ( always ) ] pub fn mr2 ( & mut self ) -> _Mr2W { _Mr2W { w : self } } # [ doc = "Bit 3 - Interrupt Mask on line 3" ] # [ inline ( always ) ] pub fn mr3 ( & mut self ) -> _Mr3W { _Mr3W { w : self } } # [ doc = "Bit 4 - Interrupt Mask on line 4" ] # [ inline ( always ) ] pub fn mr4 ( & mut self ) -> _Mr4W { _Mr4W { w : self } } # [ doc = "Bit 5 - Interrupt Mask on line 5" ] # [ inline ( always ) ] pub fn mr5 ( & mut self ) -> _Mr5W { _Mr5W { w : self } } # [ doc = "Bit 6 - Interrupt Mask on line 6" ] # [ inline ( always ) ] pub fn mr6 ( & mut self ) -> _Mr6W { _Mr6W { w : self } } # [ doc = "Bit 7 - Interrupt Mask on line 7" ] # [ inline ( always ) ] pub fn mr7 ( & mut self ) -> _Mr7W { _Mr7W { w : self } } # [ doc = "Bit 8 - Interrupt Mask on line 8" ] # [ inline ( always ) ] pub fn mr8 ( & mut self ) -> _Mr8W { _Mr8W { w : self } } # [ doc = "Bit 9 - Interrupt Mask on line 9" ] # [ inline ( always ) ] pub fn mr9 ( & mut self ) -> _Mr9W { _Mr9W { w : self } } # [ doc = "Bit 10 - Interrupt Mask on line 10" ] # [ inline ( always ) ] pub fn mr10 ( & mut self ) -> _Mr10W { _Mr10W { w : self } } # [ doc = "Bit 11 - Interrupt Mask on line 11" ] # [ inline ( always ) ] pub fn mr11 ( & mut self ) -> _Mr11W { _Mr11W { w : self } } # [ doc = "Bit 12 - Interrupt Mask on line 12" ] # [ inline ( always ) ] pub fn mr12 ( & mut self ) -> _Mr12W { _Mr12W { w : self } } # [ doc = "Bit 13 - Interrupt Mask on line 13" ] # [ inline ( always ) ] pub fn mr13 ( & mut self ) -> _Mr13W { _Mr13W { w : self } } # [ doc = "Bit 14 - Interrupt Mask on line 14" ] # [ inline ( always ) ] pub fn mr14 ( & mut self ) -> _Mr14W { _Mr14W { w : self } } # [ doc = "Bit 15 - Interrupt Mask on line 15" ] # [ inline ( always ) ] pub fn mr15 ( & mut self ) -> _Mr15W { _Mr15W { w : self } } # [ doc = "Bit 16 - Interrupt Mask on line 16" ] # [ inline ( always ) ] pub fn mr16 ( & mut self ) -> _Mr16W { _Mr16W { w : self } } # [ doc = "Bit 17 - Interrupt Mask on line 17" ] # [ inline ( always ) ] pub fn mr17 ( & mut self ) -> _Mr17W { _Mr17W { w : self } } # [ doc = "Bit 18 - Interrupt Mask on line 18" ] # [ inline ( always ) ] pub fn mr18 ( & mut self ) -> _Mr18W { _Mr18W { w : self } } # [ doc = "Bit 19 - Interrupt Mask on line 19" ] # [ inline ( always ) ] pub fn mr19 ( & mut self ) -> _Mr19W { _Mr19W { w : self } } # [ doc = "Bit 20 - Interrupt Mask on line 20" ] # [ inline ( always ) ] pub fn mr20 ( & mut self ) -> _Mr20W { _Mr20W { w : self } } # [ doc = "Bit 21 - Interrupt Mask on line 21" ] # [ inline ( always ) ] pub fn mr21 ( & mut self ) -> _Mr21W { _Mr21W { w : self } } # [ doc = "Bit 22 - Interrupt Mask on line 22" ] # [ inline ( always ) ] pub fn mr22 ( & mut self ) -> _Mr22W { _Mr22W { w : self } } } } # [ doc = "Event mask register (EXTI_EMR)" ] pub struct Emr { register : VolatileCell < u32 > } # [ doc = "Event mask register (EXTI_EMR)" ] pub mod emr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Emr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Mr0R { bits : u8 , } impl Mr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr1R { bits : u8 , } impl Mr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr2R { bits : u8 , } impl Mr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr3R { bits : u8 , } impl Mr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr4R { bits : u8 , } impl Mr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr5R { bits : u8 , } impl Mr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr6R { bits : u8 , } impl Mr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr7R { bits : u8 , } impl Mr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr8R { bits : u8 , } impl Mr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr9R { bits : u8 , } impl Mr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr10R { bits : u8 , } impl Mr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr11R { bits : u8 , } impl Mr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr12R { bits : u8 , } impl Mr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr13R { bits : u8 , } impl Mr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr14R { bits : u8 , } impl Mr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr15R { bits : u8 , } impl Mr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr16R { bits : u8 , } impl Mr16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr17R { bits : u8 , } impl Mr17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr18R { bits : u8 , } impl Mr18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr19R { bits : u8 , } impl Mr19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr20R { bits : u8 , } impl Mr20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr21R { bits : u8 , } impl Mr21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Mr22R { bits : u8 , } impl Mr22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Mr0W < 'a > { w : & 'a mut W , } impl < 'a > _Mr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr1W < 'a > { w : & 'a mut W , } impl < 'a > _Mr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr2W < 'a > { w : & 'a mut W , } impl < 'a > _Mr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr3W < 'a > { w : & 'a mut W , } impl < 'a > _Mr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr4W < 'a > { w : & 'a mut W , } impl < 'a > _Mr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr5W < 'a > { w : & 'a mut W , } impl < 'a > _Mr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr6W < 'a > { w : & 'a mut W , } impl < 'a > _Mr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr7W < 'a > { w : & 'a mut W , } impl < 'a > _Mr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr8W < 'a > { w : & 'a mut W , } impl < 'a > _Mr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr9W < 'a > { w : & 'a mut W , } impl < 'a > _Mr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr10W < 'a > { w : & 'a mut W , } impl < 'a > _Mr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr11W < 'a > { w : & 'a mut W , } impl < 'a > _Mr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr12W < 'a > { w : & 'a mut W , } impl < 'a > _Mr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr13W < 'a > { w : & 'a mut W , } impl < 'a > _Mr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr14W < 'a > { w : & 'a mut W , } impl < 'a > _Mr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr15W < 'a > { w : & 'a mut W , } impl < 'a > _Mr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr16W < 'a > { w : & 'a mut W , } impl < 'a > _Mr16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr17W < 'a > { w : & 'a mut W , } impl < 'a > _Mr17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr18W < 'a > { w : & 'a mut W , } impl < 'a > _Mr18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr19W < 'a > { w : & 'a mut W , } impl < 'a > _Mr19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr20W < 'a > { w : & 'a mut W , } impl < 'a > _Mr20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr21W < 'a > { w : & 'a mut W , } impl < 'a > _Mr21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Mr22W < 'a > { w : & 'a mut W , } impl < 'a > _Mr22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Event Mask on line 0" ] # [ inline ( always ) ] pub fn mr0 ( & self ) -> Mr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr0R { bits } } # [ doc = "Bit 1 - Event Mask on line 1" ] # [ inline ( always ) ] pub fn mr1 ( & self ) -> Mr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr1R { bits } } # [ doc = "Bit 2 - Event Mask on line 2" ] # [ inline ( always ) ] pub fn mr2 ( & self ) -> Mr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr2R { bits } } # [ doc = "Bit 3 - Event Mask on line 3" ] # [ inline ( always ) ] pub fn mr3 ( & self ) -> Mr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr3R { bits } } # [ doc = "Bit 4 - Event Mask on line 4" ] # [ inline ( always ) ] pub fn mr4 ( & self ) -> Mr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr4R { bits } } # [ doc = "Bit 5 - Event Mask on line 5" ] # [ inline ( always ) ] pub fn mr5 ( & self ) -> Mr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr5R { bits } } # [ doc = "Bit 6 - Event Mask on line 6" ] # [ inline ( always ) ] pub fn mr6 ( & self ) -> Mr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr6R { bits } } # [ doc = "Bit 7 - Event Mask on line 7" ] # [ inline ( always ) ] pub fn mr7 ( & self ) -> Mr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr7R { bits } } # [ doc = "Bit 8 - Event Mask on line 8" ] # [ inline ( always ) ] pub fn mr8 ( & self ) -> Mr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr8R { bits } } # [ doc = "Bit 9 - Event Mask on line 9" ] # [ inline ( always ) ] pub fn mr9 ( & self ) -> Mr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr9R { bits } } # [ doc = "Bit 10 - Event Mask on line 10" ] # [ inline ( always ) ] pub fn mr10 ( & self ) -> Mr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr10R { bits } } # [ doc = "Bit 11 - Event Mask on line 11" ] # [ inline ( always ) ] pub fn mr11 ( & self ) -> Mr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr11R { bits } } # [ doc = "Bit 12 - Event Mask on line 12" ] # [ inline ( always ) ] pub fn mr12 ( & self ) -> Mr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr12R { bits } } # [ doc = "Bit 13 - Event Mask on line 13" ] # [ inline ( always ) ] pub fn mr13 ( & self ) -> Mr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr13R { bits } } # [ doc = "Bit 14 - Event Mask on line 14" ] # [ inline ( always ) ] pub fn mr14 ( & self ) -> Mr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr14R { bits } } # [ doc = "Bit 15 - Event Mask on line 15" ] # [ inline ( always ) ] pub fn mr15 ( & self ) -> Mr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr15R { bits } } # [ doc = "Bit 16 - Event Mask on line 16" ] # [ inline ( always ) ] pub fn mr16 ( & self ) -> Mr16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr16R { bits } } # [ doc = "Bit 17 - Event Mask on line 17" ] # [ inline ( always ) ] pub fn mr17 ( & self ) -> Mr17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr17R { bits } } # [ doc = "Bit 18 - Event Mask on line 18" ] # [ inline ( always ) ] pub fn mr18 ( & self ) -> Mr18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr18R { bits } } # [ doc = "Bit 19 - Event Mask on line 19" ] # [ inline ( always ) ] pub fn mr19 ( & self ) -> Mr19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr19R { bits } } # [ doc = "Bit 20 - Event Mask on line 20" ] # [ inline ( always ) ] pub fn mr20 ( & self ) -> Mr20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr20R { bits } } # [ doc = "Bit 21 - Event Mask on line 21" ] # [ inline ( always ) ] pub fn mr21 ( & self ) -> Mr21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr21R { bits } } # [ doc = "Bit 22 - Event Mask on line 22" ] # [ inline ( always ) ] pub fn mr22 ( & self ) -> Mr22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Mr22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Event Mask on line 0" ] # [ inline ( always ) ] pub fn mr0 ( & mut self ) -> _Mr0W { _Mr0W { w : self } } # [ doc = "Bit 1 - Event Mask on line 1" ] # [ inline ( always ) ] pub fn mr1 ( & mut self ) -> _Mr1W { _Mr1W { w : self } } # [ doc = "Bit 2 - Event Mask on line 2" ] # [ inline ( always ) ] pub fn mr2 ( & mut self ) -> _Mr2W { _Mr2W { w : self } } # [ doc = "Bit 3 - Event Mask on line 3" ] # [ inline ( always ) ] pub fn mr3 ( & mut self ) -> _Mr3W { _Mr3W { w : self } } # [ doc = "Bit 4 - Event Mask on line 4" ] # [ inline ( always ) ] pub fn mr4 ( & mut self ) -> _Mr4W { _Mr4W { w : self } } # [ doc = "Bit 5 - Event Mask on line 5" ] # [ inline ( always ) ] pub fn mr5 ( & mut self ) -> _Mr5W { _Mr5W { w : self } } # [ doc = "Bit 6 - Event Mask on line 6" ] # [ inline ( always ) ] pub fn mr6 ( & mut self ) -> _Mr6W { _Mr6W { w : self } } # [ doc = "Bit 7 - Event Mask on line 7" ] # [ inline ( always ) ] pub fn mr7 ( & mut self ) -> _Mr7W { _Mr7W { w : self } } # [ doc = "Bit 8 - Event Mask on line 8" ] # [ inline ( always ) ] pub fn mr8 ( & mut self ) -> _Mr8W { _Mr8W { w : self } } # [ doc = "Bit 9 - Event Mask on line 9" ] # [ inline ( always ) ] pub fn mr9 ( & mut self ) -> _Mr9W { _Mr9W { w : self } } # [ doc = "Bit 10 - Event Mask on line 10" ] # [ inline ( always ) ] pub fn mr10 ( & mut self ) -> _Mr10W { _Mr10W { w : self } } # [ doc = "Bit 11 - Event Mask on line 11" ] # [ inline ( always ) ] pub fn mr11 ( & mut self ) -> _Mr11W { _Mr11W { w : self } } # [ doc = "Bit 12 - Event Mask on line 12" ] # [ inline ( always ) ] pub fn mr12 ( & mut self ) -> _Mr12W { _Mr12W { w : self } } # [ doc = "Bit 13 - Event Mask on line 13" ] # [ inline ( always ) ] pub fn mr13 ( & mut self ) -> _Mr13W { _Mr13W { w : self } } # [ doc = "Bit 14 - Event Mask on line 14" ] # [ inline ( always ) ] pub fn mr14 ( & mut self ) -> _Mr14W { _Mr14W { w : self } } # [ doc = "Bit 15 - Event Mask on line 15" ] # [ inline ( always ) ] pub fn mr15 ( & mut self ) -> _Mr15W { _Mr15W { w : self } } # [ doc = "Bit 16 - Event Mask on line 16" ] # [ inline ( always ) ] pub fn mr16 ( & mut self ) -> _Mr16W { _Mr16W { w : self } } # [ doc = "Bit 17 - Event Mask on line 17" ] # [ inline ( always ) ] pub fn mr17 ( & mut self ) -> _Mr17W { _Mr17W { w : self } } # [ doc = "Bit 18 - Event Mask on line 18" ] # [ inline ( always ) ] pub fn mr18 ( & mut self ) -> _Mr18W { _Mr18W { w : self } } # [ doc = "Bit 19 - Event Mask on line 19" ] # [ inline ( always ) ] pub fn mr19 ( & mut self ) -> _Mr19W { _Mr19W { w : self } } # [ doc = "Bit 20 - Event Mask on line 20" ] # [ inline ( always ) ] pub fn mr20 ( & mut self ) -> _Mr20W { _Mr20W { w : self } } # [ doc = "Bit 21 - Event Mask on line 21" ] # [ inline ( always ) ] pub fn mr21 ( & mut self ) -> _Mr21W { _Mr21W { w : self } } # [ doc = "Bit 22 - Event Mask on line 22" ] # [ inline ( always ) ] pub fn mr22 ( & mut self ) -> _Mr22W { _Mr22W { w : self } } } } # [ doc = "Rising Trigger selection register (EXTI_RTSR)" ] pub struct Rtsr { register : VolatileCell < u32 > } # [ doc = "Rising Trigger selection register (EXTI_RTSR)" ] pub mod rtsr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Rtsr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tr0R { bits : u8 , } impl Tr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr1R { bits : u8 , } impl Tr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr2R { bits : u8 , } impl Tr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr3R { bits : u8 , } impl Tr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr4R { bits : u8 , } impl Tr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr5R { bits : u8 , } impl Tr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr6R { bits : u8 , } impl Tr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr7R { bits : u8 , } impl Tr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr8R { bits : u8 , } impl Tr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr9R { bits : u8 , } impl Tr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr10R { bits : u8 , } impl Tr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr11R { bits : u8 , } impl Tr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr12R { bits : u8 , } impl Tr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr13R { bits : u8 , } impl Tr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr14R { bits : u8 , } impl Tr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr15R { bits : u8 , } impl Tr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr16R { bits : u8 , } impl Tr16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr17R { bits : u8 , } impl Tr17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr18R { bits : u8 , } impl Tr18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr19R { bits : u8 , } impl Tr19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr20R { bits : u8 , } impl Tr20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr21R { bits : u8 , } impl Tr21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr22R { bits : u8 , } impl Tr22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tr0W < 'a > { w : & 'a mut W , } impl < 'a > _Tr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr1W < 'a > { w : & 'a mut W , } impl < 'a > _Tr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr2W < 'a > { w : & 'a mut W , } impl < 'a > _Tr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr3W < 'a > { w : & 'a mut W , } impl < 'a > _Tr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr4W < 'a > { w : & 'a mut W , } impl < 'a > _Tr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr5W < 'a > { w : & 'a mut W , } impl < 'a > _Tr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr6W < 'a > { w : & 'a mut W , } impl < 'a > _Tr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr7W < 'a > { w : & 'a mut W , } impl < 'a > _Tr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr8W < 'a > { w : & 'a mut W , } impl < 'a > _Tr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr9W < 'a > { w : & 'a mut W , } impl < 'a > _Tr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr10W < 'a > { w : & 'a mut W , } impl < 'a > _Tr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr11W < 'a > { w : & 'a mut W , } impl < 'a > _Tr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr12W < 'a > { w : & 'a mut W , } impl < 'a > _Tr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr13W < 'a > { w : & 'a mut W , } impl < 'a > _Tr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr14W < 'a > { w : & 'a mut W , } impl < 'a > _Tr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr15W < 'a > { w : & 'a mut W , } impl < 'a > _Tr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr16W < 'a > { w : & 'a mut W , } impl < 'a > _Tr16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr17W < 'a > { w : & 'a mut W , } impl < 'a > _Tr17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr18W < 'a > { w : & 'a mut W , } impl < 'a > _Tr18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr19W < 'a > { w : & 'a mut W , } impl < 'a > _Tr19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr20W < 'a > { w : & 'a mut W , } impl < 'a > _Tr20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr21W < 'a > { w : & 'a mut W , } impl < 'a > _Tr21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr22W < 'a > { w : & 'a mut W , } impl < 'a > _Tr22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Rising trigger event configuration of line 0" ] # [ inline ( always ) ] pub fn tr0 ( & self ) -> Tr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr0R { bits } } # [ doc = "Bit 1 - Rising trigger event configuration of line 1" ] # [ inline ( always ) ] pub fn tr1 ( & self ) -> Tr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr1R { bits } } # [ doc = "Bit 2 - Rising trigger event configuration of line 2" ] # [ inline ( always ) ] pub fn tr2 ( & self ) -> Tr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr2R { bits } } # [ doc = "Bit 3 - Rising trigger event configuration of line 3" ] # [ inline ( always ) ] pub fn tr3 ( & self ) -> Tr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr3R { bits } } # [ doc = "Bit 4 - Rising trigger event configuration of line 4" ] # [ inline ( always ) ] pub fn tr4 ( & self ) -> Tr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr4R { bits } } # [ doc = "Bit 5 - Rising trigger event configuration of line 5" ] # [ inline ( always ) ] pub fn tr5 ( & self ) -> Tr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr5R { bits } } # [ doc = "Bit 6 - Rising trigger event configuration of line 6" ] # [ inline ( always ) ] pub fn tr6 ( & self ) -> Tr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr6R { bits } } # [ doc = "Bit 7 - Rising trigger event configuration of line 7" ] # [ inline ( always ) ] pub fn tr7 ( & self ) -> Tr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr7R { bits } } # [ doc = "Bit 8 - Rising trigger event configuration of line 8" ] # [ inline ( always ) ] pub fn tr8 ( & self ) -> Tr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr8R { bits } } # [ doc = "Bit 9 - Rising trigger event configuration of line 9" ] # [ inline ( always ) ] pub fn tr9 ( & self ) -> Tr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr9R { bits } } # [ doc = "Bit 10 - Rising trigger event configuration of line 10" ] # [ inline ( always ) ] pub fn tr10 ( & self ) -> Tr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr10R { bits } } # [ doc = "Bit 11 - Rising trigger event configuration of line 11" ] # [ inline ( always ) ] pub fn tr11 ( & self ) -> Tr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr11R { bits } } # [ doc = "Bit 12 - Rising trigger event configuration of line 12" ] # [ inline ( always ) ] pub fn tr12 ( & self ) -> Tr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr12R { bits } } # [ doc = "Bit 13 - Rising trigger event configuration of line 13" ] # [ inline ( always ) ] pub fn tr13 ( & self ) -> Tr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr13R { bits } } # [ doc = "Bit 14 - Rising trigger event configuration of line 14" ] # [ inline ( always ) ] pub fn tr14 ( & self ) -> Tr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr14R { bits } } # [ doc = "Bit 15 - Rising trigger event configuration of line 15" ] # [ inline ( always ) ] pub fn tr15 ( & self ) -> Tr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr15R { bits } } # [ doc = "Bit 16 - Rising trigger event configuration of line 16" ] # [ inline ( always ) ] pub fn tr16 ( & self ) -> Tr16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr16R { bits } } # [ doc = "Bit 17 - Rising trigger event configuration of line 17" ] # [ inline ( always ) ] pub fn tr17 ( & self ) -> Tr17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr17R { bits } } # [ doc = "Bit 18 - Rising trigger event configuration of line 18" ] # [ inline ( always ) ] pub fn tr18 ( & self ) -> Tr18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr18R { bits } } # [ doc = "Bit 19 - Rising trigger event configuration of line 19" ] # [ inline ( always ) ] pub fn tr19 ( & self ) -> Tr19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr19R { bits } } # [ doc = "Bit 20 - Rising trigger event configuration of line 20" ] # [ inline ( always ) ] pub fn tr20 ( & self ) -> Tr20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr20R { bits } } # [ doc = "Bit 21 - Rising trigger event configuration of line 21" ] # [ inline ( always ) ] pub fn tr21 ( & self ) -> Tr21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr21R { bits } } # [ doc = "Bit 22 - Rising trigger event configuration of line 22" ] # [ inline ( always ) ] pub fn tr22 ( & self ) -> Tr22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Rising trigger event configuration of line 0" ] # [ inline ( always ) ] pub fn tr0 ( & mut self ) -> _Tr0W { _Tr0W { w : self } } # [ doc = "Bit 1 - Rising trigger event configuration of line 1" ] # [ inline ( always ) ] pub fn tr1 ( & mut self ) -> _Tr1W { _Tr1W { w : self } } # [ doc = "Bit 2 - Rising trigger event configuration of line 2" ] # [ inline ( always ) ] pub fn tr2 ( & mut self ) -> _Tr2W { _Tr2W { w : self } } # [ doc = "Bit 3 - Rising trigger event configuration of line 3" ] # [ inline ( always ) ] pub fn tr3 ( & mut self ) -> _Tr3W { _Tr3W { w : self } } # [ doc = "Bit 4 - Rising trigger event configuration of line 4" ] # [ inline ( always ) ] pub fn tr4 ( & mut self ) -> _Tr4W { _Tr4W { w : self } } # [ doc = "Bit 5 - Rising trigger event configuration of line 5" ] # [ inline ( always ) ] pub fn tr5 ( & mut self ) -> _Tr5W { _Tr5W { w : self } } # [ doc = "Bit 6 - Rising trigger event configuration of line 6" ] # [ inline ( always ) ] pub fn tr6 ( & mut self ) -> _Tr6W { _Tr6W { w : self } } # [ doc = "Bit 7 - Rising trigger event configuration of line 7" ] # [ inline ( always ) ] pub fn tr7 ( & mut self ) -> _Tr7W { _Tr7W { w : self } } # [ doc = "Bit 8 - Rising trigger event configuration of line 8" ] # [ inline ( always ) ] pub fn tr8 ( & mut self ) -> _Tr8W { _Tr8W { w : self } } # [ doc = "Bit 9 - Rising trigger event configuration of line 9" ] # [ inline ( always ) ] pub fn tr9 ( & mut self ) -> _Tr9W { _Tr9W { w : self } } # [ doc = "Bit 10 - Rising trigger event configuration of line 10" ] # [ inline ( always ) ] pub fn tr10 ( & mut self ) -> _Tr10W { _Tr10W { w : self } } # [ doc = "Bit 11 - Rising trigger event configuration of line 11" ] # [ inline ( always ) ] pub fn tr11 ( & mut self ) -> _Tr11W { _Tr11W { w : self } } # [ doc = "Bit 12 - Rising trigger event configuration of line 12" ] # [ inline ( always ) ] pub fn tr12 ( & mut self ) -> _Tr12W { _Tr12W { w : self } } # [ doc = "Bit 13 - Rising trigger event configuration of line 13" ] # [ inline ( always ) ] pub fn tr13 ( & mut self ) -> _Tr13W { _Tr13W { w : self } } # [ doc = "Bit 14 - Rising trigger event configuration of line 14" ] # [ inline ( always ) ] pub fn tr14 ( & mut self ) -> _Tr14W { _Tr14W { w : self } } # [ doc = "Bit 15 - Rising trigger event configuration of line 15" ] # [ inline ( always ) ] pub fn tr15 ( & mut self ) -> _Tr15W { _Tr15W { w : self } } # [ doc = "Bit 16 - Rising trigger event configuration of line 16" ] # [ inline ( always ) ] pub fn tr16 ( & mut self ) -> _Tr16W { _Tr16W { w : self } } # [ doc = "Bit 17 - Rising trigger event configuration of line 17" ] # [ inline ( always ) ] pub fn tr17 ( & mut self ) -> _Tr17W { _Tr17W { w : self } } # [ doc = "Bit 18 - Rising trigger event configuration of line 18" ] # [ inline ( always ) ] pub fn tr18 ( & mut self ) -> _Tr18W { _Tr18W { w : self } } # [ doc = "Bit 19 - Rising trigger event configuration of line 19" ] # [ inline ( always ) ] pub fn tr19 ( & mut self ) -> _Tr19W { _Tr19W { w : self } } # [ doc = "Bit 20 - Rising trigger event configuration of line 20" ] # [ inline ( always ) ] pub fn tr20 ( & mut self ) -> _Tr20W { _Tr20W { w : self } } # [ doc = "Bit 21 - Rising trigger event configuration of line 21" ] # [ inline ( always ) ] pub fn tr21 ( & mut self ) -> _Tr21W { _Tr21W { w : self } } # [ doc = "Bit 22 - Rising trigger event configuration of line 22" ] # [ inline ( always ) ] pub fn tr22 ( & mut self ) -> _Tr22W { _Tr22W { w : self } } } } # [ doc = "Falling Trigger selection register (EXTI_FTSR)" ] pub struct Ftsr { register : VolatileCell < u32 > } # [ doc = "Falling Trigger selection register (EXTI_FTSR)" ] pub mod ftsr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ftsr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tr0R { bits : u8 , } impl Tr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr1R { bits : u8 , } impl Tr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr2R { bits : u8 , } impl Tr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr3R { bits : u8 , } impl Tr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr4R { bits : u8 , } impl Tr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr5R { bits : u8 , } impl Tr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr6R { bits : u8 , } impl Tr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr7R { bits : u8 , } impl Tr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr8R { bits : u8 , } impl Tr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr9R { bits : u8 , } impl Tr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr10R { bits : u8 , } impl Tr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr11R { bits : u8 , } impl Tr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr12R { bits : u8 , } impl Tr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr13R { bits : u8 , } impl Tr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr14R { bits : u8 , } impl Tr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr15R { bits : u8 , } impl Tr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr16R { bits : u8 , } impl Tr16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr17R { bits : u8 , } impl Tr17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr18R { bits : u8 , } impl Tr18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr19R { bits : u8 , } impl Tr19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr20R { bits : u8 , } impl Tr20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr21R { bits : u8 , } impl Tr21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tr22R { bits : u8 , } impl Tr22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tr0W < 'a > { w : & 'a mut W , } impl < 'a > _Tr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr1W < 'a > { w : & 'a mut W , } impl < 'a > _Tr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr2W < 'a > { w : & 'a mut W , } impl < 'a > _Tr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr3W < 'a > { w : & 'a mut W , } impl < 'a > _Tr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr4W < 'a > { w : & 'a mut W , } impl < 'a > _Tr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr5W < 'a > { w : & 'a mut W , } impl < 'a > _Tr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr6W < 'a > { w : & 'a mut W , } impl < 'a > _Tr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr7W < 'a > { w : & 'a mut W , } impl < 'a > _Tr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr8W < 'a > { w : & 'a mut W , } impl < 'a > _Tr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr9W < 'a > { w : & 'a mut W , } impl < 'a > _Tr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr10W < 'a > { w : & 'a mut W , } impl < 'a > _Tr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr11W < 'a > { w : & 'a mut W , } impl < 'a > _Tr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr12W < 'a > { w : & 'a mut W , } impl < 'a > _Tr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr13W < 'a > { w : & 'a mut W , } impl < 'a > _Tr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr14W < 'a > { w : & 'a mut W , } impl < 'a > _Tr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr15W < 'a > { w : & 'a mut W , } impl < 'a > _Tr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr16W < 'a > { w : & 'a mut W , } impl < 'a > _Tr16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr17W < 'a > { w : & 'a mut W , } impl < 'a > _Tr17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr18W < 'a > { w : & 'a mut W , } impl < 'a > _Tr18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr19W < 'a > { w : & 'a mut W , } impl < 'a > _Tr19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr20W < 'a > { w : & 'a mut W , } impl < 'a > _Tr20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr21W < 'a > { w : & 'a mut W , } impl < 'a > _Tr21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tr22W < 'a > { w : & 'a mut W , } impl < 'a > _Tr22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Falling trigger event configuration of line 0" ] # [ inline ( always ) ] pub fn tr0 ( & self ) -> Tr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr0R { bits } } # [ doc = "Bit 1 - Falling trigger event configuration of line 1" ] # [ inline ( always ) ] pub fn tr1 ( & self ) -> Tr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr1R { bits } } # [ doc = "Bit 2 - Falling trigger event configuration of line 2" ] # [ inline ( always ) ] pub fn tr2 ( & self ) -> Tr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr2R { bits } } # [ doc = "Bit 3 - Falling trigger event configuration of line 3" ] # [ inline ( always ) ] pub fn tr3 ( & self ) -> Tr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr3R { bits } } # [ doc = "Bit 4 - Falling trigger event configuration of line 4" ] # [ inline ( always ) ] pub fn tr4 ( & self ) -> Tr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr4R { bits } } # [ doc = "Bit 5 - Falling trigger event configuration of line 5" ] # [ inline ( always ) ] pub fn tr5 ( & self ) -> Tr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr5R { bits } } # [ doc = "Bit 6 - Falling trigger event configuration of line 6" ] # [ inline ( always ) ] pub fn tr6 ( & self ) -> Tr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr6R { bits } } # [ doc = "Bit 7 - Falling trigger event configuration of line 7" ] # [ inline ( always ) ] pub fn tr7 ( & self ) -> Tr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr7R { bits } } # [ doc = "Bit 8 - Falling trigger event configuration of line 8" ] # [ inline ( always ) ] pub fn tr8 ( & self ) -> Tr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr8R { bits } } # [ doc = "Bit 9 - Falling trigger event configuration of line 9" ] # [ inline ( always ) ] pub fn tr9 ( & self ) -> Tr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr9R { bits } } # [ doc = "Bit 10 - Falling trigger event configuration of line 10" ] # [ inline ( always ) ] pub fn tr10 ( & self ) -> Tr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr10R { bits } } # [ doc = "Bit 11 - Falling trigger event configuration of line 11" ] # [ inline ( always ) ] pub fn tr11 ( & self ) -> Tr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr11R { bits } } # [ doc = "Bit 12 - Falling trigger event configuration of line 12" ] # [ inline ( always ) ] pub fn tr12 ( & self ) -> Tr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr12R { bits } } # [ doc = "Bit 13 - Falling trigger event configuration of line 13" ] # [ inline ( always ) ] pub fn tr13 ( & self ) -> Tr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr13R { bits } } # [ doc = "Bit 14 - Falling trigger event configuration of line 14" ] # [ inline ( always ) ] pub fn tr14 ( & self ) -> Tr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr14R { bits } } # [ doc = "Bit 15 - Falling trigger event configuration of line 15" ] # [ inline ( always ) ] pub fn tr15 ( & self ) -> Tr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr15R { bits } } # [ doc = "Bit 16 - Falling trigger event configuration of line 16" ] # [ inline ( always ) ] pub fn tr16 ( & self ) -> Tr16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr16R { bits } } # [ doc = "Bit 17 - Falling trigger event configuration of line 17" ] # [ inline ( always ) ] pub fn tr17 ( & self ) -> Tr17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr17R { bits } } # [ doc = "Bit 18 - Falling trigger event configuration of line 18" ] # [ inline ( always ) ] pub fn tr18 ( & self ) -> Tr18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr18R { bits } } # [ doc = "Bit 19 - Falling trigger event configuration of line 19" ] # [ inline ( always ) ] pub fn tr19 ( & self ) -> Tr19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr19R { bits } } # [ doc = "Bit 20 - Falling trigger event configuration of line 20" ] # [ inline ( always ) ] pub fn tr20 ( & self ) -> Tr20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr20R { bits } } # [ doc = "Bit 21 - Falling trigger event configuration of line 21" ] # [ inline ( always ) ] pub fn tr21 ( & self ) -> Tr21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr21R { bits } } # [ doc = "Bit 22 - Falling trigger event configuration of line 22" ] # [ inline ( always ) ] pub fn tr22 ( & self ) -> Tr22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Tr22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Falling trigger event configuration of line 0" ] # [ inline ( always ) ] pub fn tr0 ( & mut self ) -> _Tr0W { _Tr0W { w : self } } # [ doc = "Bit 1 - Falling trigger event configuration of line 1" ] # [ inline ( always ) ] pub fn tr1 ( & mut self ) -> _Tr1W { _Tr1W { w : self } } # [ doc = "Bit 2 - Falling trigger event configuration of line 2" ] # [ inline ( always ) ] pub fn tr2 ( & mut self ) -> _Tr2W { _Tr2W { w : self } } # [ doc = "Bit 3 - Falling trigger event configuration of line 3" ] # [ inline ( always ) ] pub fn tr3 ( & mut self ) -> _Tr3W { _Tr3W { w : self } } # [ doc = "Bit 4 - Falling trigger event configuration of line 4" ] # [ inline ( always ) ] pub fn tr4 ( & mut self ) -> _Tr4W { _Tr4W { w : self } } # [ doc = "Bit 5 - Falling trigger event configuration of line 5" ] # [ inline ( always ) ] pub fn tr5 ( & mut self ) -> _Tr5W { _Tr5W { w : self } } # [ doc = "Bit 6 - Falling trigger event configuration of line 6" ] # [ inline ( always ) ] pub fn tr6 ( & mut self ) -> _Tr6W { _Tr6W { w : self } } # [ doc = "Bit 7 - Falling trigger event configuration of line 7" ] # [ inline ( always ) ] pub fn tr7 ( & mut self ) -> _Tr7W { _Tr7W { w : self } } # [ doc = "Bit 8 - Falling trigger event configuration of line 8" ] # [ inline ( always ) ] pub fn tr8 ( & mut self ) -> _Tr8W { _Tr8W { w : self } } # [ doc = "Bit 9 - Falling trigger event configuration of line 9" ] # [ inline ( always ) ] pub fn tr9 ( & mut self ) -> _Tr9W { _Tr9W { w : self } } # [ doc = "Bit 10 - Falling trigger event configuration of line 10" ] # [ inline ( always ) ] pub fn tr10 ( & mut self ) -> _Tr10W { _Tr10W { w : self } } # [ doc = "Bit 11 - Falling trigger event configuration of line 11" ] # [ inline ( always ) ] pub fn tr11 ( & mut self ) -> _Tr11W { _Tr11W { w : self } } # [ doc = "Bit 12 - Falling trigger event configuration of line 12" ] # [ inline ( always ) ] pub fn tr12 ( & mut self ) -> _Tr12W { _Tr12W { w : self } } # [ doc = "Bit 13 - Falling trigger event configuration of line 13" ] # [ inline ( always ) ] pub fn tr13 ( & mut self ) -> _Tr13W { _Tr13W { w : self } } # [ doc = "Bit 14 - Falling trigger event configuration of line 14" ] # [ inline ( always ) ] pub fn tr14 ( & mut self ) -> _Tr14W { _Tr14W { w : self } } # [ doc = "Bit 15 - Falling trigger event configuration of line 15" ] # [ inline ( always ) ] pub fn tr15 ( & mut self ) -> _Tr15W { _Tr15W { w : self } } # [ doc = "Bit 16 - Falling trigger event configuration of line 16" ] # [ inline ( always ) ] pub fn tr16 ( & mut self ) -> _Tr16W { _Tr16W { w : self } } # [ doc = "Bit 17 - Falling trigger event configuration of line 17" ] # [ inline ( always ) ] pub fn tr17 ( & mut self ) -> _Tr17W { _Tr17W { w : self } } # [ doc = "Bit 18 - Falling trigger event configuration of line 18" ] # [ inline ( always ) ] pub fn tr18 ( & mut self ) -> _Tr18W { _Tr18W { w : self } } # [ doc = "Bit 19 - Falling trigger event configuration of line 19" ] # [ inline ( always ) ] pub fn tr19 ( & mut self ) -> _Tr19W { _Tr19W { w : self } } # [ doc = "Bit 20 - Falling trigger event configuration of line 20" ] # [ inline ( always ) ] pub fn tr20 ( & mut self ) -> _Tr20W { _Tr20W { w : self } } # [ doc = "Bit 21 - Falling trigger event configuration of line 21" ] # [ inline ( always ) ] pub fn tr21 ( & mut self ) -> _Tr21W { _Tr21W { w : self } } # [ doc = "Bit 22 - Falling trigger event configuration of line 22" ] # [ inline ( always ) ] pub fn tr22 ( & mut self ) -> _Tr22W { _Tr22W { w : self } } } } # [ doc = "Software interrupt event register (EXTI_SWIER)" ] pub struct Swier { register : VolatileCell < u32 > } # [ doc = "Software interrupt event register (EXTI_SWIER)" ] pub mod swier { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Swier { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Swier0R { bits : u8 , } impl Swier0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier1R { bits : u8 , } impl Swier1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier2R { bits : u8 , } impl Swier2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier3R { bits : u8 , } impl Swier3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier4R { bits : u8 , } impl Swier4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier5R { bits : u8 , } impl Swier5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier6R { bits : u8 , } impl Swier6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier7R { bits : u8 , } impl Swier7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier8R { bits : u8 , } impl Swier8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier9R { bits : u8 , } impl Swier9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier10R { bits : u8 , } impl Swier10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier11R { bits : u8 , } impl Swier11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier12R { bits : u8 , } impl Swier12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier13R { bits : u8 , } impl Swier13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier14R { bits : u8 , } impl Swier14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier15R { bits : u8 , } impl Swier15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier16R { bits : u8 , } impl Swier16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier17R { bits : u8 , } impl Swier17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier18R { bits : u8 , } impl Swier18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier19R { bits : u8 , } impl Swier19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier20R { bits : u8 , } impl Swier20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier21R { bits : u8 , } impl Swier21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Swier22R { bits : u8 , } impl Swier22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Swier0W < 'a > { w : & 'a mut W , } impl < 'a > _Swier0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier1W < 'a > { w : & 'a mut W , } impl < 'a > _Swier1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier2W < 'a > { w : & 'a mut W , } impl < 'a > _Swier2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier3W < 'a > { w : & 'a mut W , } impl < 'a > _Swier3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier4W < 'a > { w : & 'a mut W , } impl < 'a > _Swier4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier5W < 'a > { w : & 'a mut W , } impl < 'a > _Swier5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier6W < 'a > { w : & 'a mut W , } impl < 'a > _Swier6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier7W < 'a > { w : & 'a mut W , } impl < 'a > _Swier7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier8W < 'a > { w : & 'a mut W , } impl < 'a > _Swier8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier9W < 'a > { w : & 'a mut W , } impl < 'a > _Swier9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier10W < 'a > { w : & 'a mut W , } impl < 'a > _Swier10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier11W < 'a > { w : & 'a mut W , } impl < 'a > _Swier11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier12W < 'a > { w : & 'a mut W , } impl < 'a > _Swier12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier13W < 'a > { w : & 'a mut W , } impl < 'a > _Swier13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier14W < 'a > { w : & 'a mut W , } impl < 'a > _Swier14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier15W < 'a > { w : & 'a mut W , } impl < 'a > _Swier15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier16W < 'a > { w : & 'a mut W , } impl < 'a > _Swier16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier17W < 'a > { w : & 'a mut W , } impl < 'a > _Swier17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier18W < 'a > { w : & 'a mut W , } impl < 'a > _Swier18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier19W < 'a > { w : & 'a mut W , } impl < 'a > _Swier19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier20W < 'a > { w : & 'a mut W , } impl < 'a > _Swier20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier21W < 'a > { w : & 'a mut W , } impl < 'a > _Swier21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Swier22W < 'a > { w : & 'a mut W , } impl < 'a > _Swier22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Software Interrupt on line 0" ] # [ inline ( always ) ] pub fn swier0 ( & self ) -> Swier0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier0R { bits } } # [ doc = "Bit 1 - Software Interrupt on line 1" ] # [ inline ( always ) ] pub fn swier1 ( & self ) -> Swier1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier1R { bits } } # [ doc = "Bit 2 - Software Interrupt on line 2" ] # [ inline ( always ) ] pub fn swier2 ( & self ) -> Swier2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier2R { bits } } # [ doc = "Bit 3 - Software Interrupt on line 3" ] # [ inline ( always ) ] pub fn swier3 ( & self ) -> Swier3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier3R { bits } } # [ doc = "Bit 4 - Software Interrupt on line 4" ] # [ inline ( always ) ] pub fn swier4 ( & self ) -> Swier4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier4R { bits } } # [ doc = "Bit 5 - Software Interrupt on line 5" ] # [ inline ( always ) ] pub fn swier5 ( & self ) -> Swier5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier5R { bits } } # [ doc = "Bit 6 - Software Interrupt on line 6" ] # [ inline ( always ) ] pub fn swier6 ( & self ) -> Swier6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier6R { bits } } # [ doc = "Bit 7 - Software Interrupt on line 7" ] # [ inline ( always ) ] pub fn swier7 ( & self ) -> Swier7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier7R { bits } } # [ doc = "Bit 8 - Software Interrupt on line 8" ] # [ inline ( always ) ] pub fn swier8 ( & self ) -> Swier8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier8R { bits } } # [ doc = "Bit 9 - Software Interrupt on line 9" ] # [ inline ( always ) ] pub fn swier9 ( & self ) -> Swier9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier9R { bits } } # [ doc = "Bit 10 - Software Interrupt on line 10" ] # [ inline ( always ) ] pub fn swier10 ( & self ) -> Swier10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier10R { bits } } # [ doc = "Bit 11 - Software Interrupt on line 11" ] # [ inline ( always ) ] pub fn swier11 ( & self ) -> Swier11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier11R { bits } } # [ doc = "Bit 12 - Software Interrupt on line 12" ] # [ inline ( always ) ] pub fn swier12 ( & self ) -> Swier12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier12R { bits } } # [ doc = "Bit 13 - Software Interrupt on line 13" ] # [ inline ( always ) ] pub fn swier13 ( & self ) -> Swier13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier13R { bits } } # [ doc = "Bit 14 - Software Interrupt on line 14" ] # [ inline ( always ) ] pub fn swier14 ( & self ) -> Swier14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier14R { bits } } # [ doc = "Bit 15 - Software Interrupt on line 15" ] # [ inline ( always ) ] pub fn swier15 ( & self ) -> Swier15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier15R { bits } } # [ doc = "Bit 16 - Software Interrupt on line 16" ] # [ inline ( always ) ] pub fn swier16 ( & self ) -> Swier16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier16R { bits } } # [ doc = "Bit 17 - Software Interrupt on line 17" ] # [ inline ( always ) ] pub fn swier17 ( & self ) -> Swier17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier17R { bits } } # [ doc = "Bit 18 - Software Interrupt on line 18" ] # [ inline ( always ) ] pub fn swier18 ( & self ) -> Swier18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier18R { bits } } # [ doc = "Bit 19 - Software Interrupt on line 19" ] # [ inline ( always ) ] pub fn swier19 ( & self ) -> Swier19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier19R { bits } } # [ doc = "Bit 20 - Software Interrupt on line 20" ] # [ inline ( always ) ] pub fn swier20 ( & self ) -> Swier20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier20R { bits } } # [ doc = "Bit 21 - Software Interrupt on line 21" ] # [ inline ( always ) ] pub fn swier21 ( & self ) -> Swier21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier21R { bits } } # [ doc = "Bit 22 - Software Interrupt on line 22" ] # [ inline ( always ) ] pub fn swier22 ( & self ) -> Swier22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Swier22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Software Interrupt on line 0" ] # [ inline ( always ) ] pub fn swier0 ( & mut self ) -> _Swier0W { _Swier0W { w : self } } # [ doc = "Bit 1 - Software Interrupt on line 1" ] # [ inline ( always ) ] pub fn swier1 ( & mut self ) -> _Swier1W { _Swier1W { w : self } } # [ doc = "Bit 2 - Software Interrupt on line 2" ] # [ inline ( always ) ] pub fn swier2 ( & mut self ) -> _Swier2W { _Swier2W { w : self } } # [ doc = "Bit 3 - Software Interrupt on line 3" ] # [ inline ( always ) ] pub fn swier3 ( & mut self ) -> _Swier3W { _Swier3W { w : self } } # [ doc = "Bit 4 - Software Interrupt on line 4" ] # [ inline ( always ) ] pub fn swier4 ( & mut self ) -> _Swier4W { _Swier4W { w : self } } # [ doc = "Bit 5 - Software Interrupt on line 5" ] # [ inline ( always ) ] pub fn swier5 ( & mut self ) -> _Swier5W { _Swier5W { w : self } } # [ doc = "Bit 6 - Software Interrupt on line 6" ] # [ inline ( always ) ] pub fn swier6 ( & mut self ) -> _Swier6W { _Swier6W { w : self } } # [ doc = "Bit 7 - Software Interrupt on line 7" ] # [ inline ( always ) ] pub fn swier7 ( & mut self ) -> _Swier7W { _Swier7W { w : self } } # [ doc = "Bit 8 - Software Interrupt on line 8" ] # [ inline ( always ) ] pub fn swier8 ( & mut self ) -> _Swier8W { _Swier8W { w : self } } # [ doc = "Bit 9 - Software Interrupt on line 9" ] # [ inline ( always ) ] pub fn swier9 ( & mut self ) -> _Swier9W { _Swier9W { w : self } } # [ doc = "Bit 10 - Software Interrupt on line 10" ] # [ inline ( always ) ] pub fn swier10 ( & mut self ) -> _Swier10W { _Swier10W { w : self } } # [ doc = "Bit 11 - Software Interrupt on line 11" ] # [ inline ( always ) ] pub fn swier11 ( & mut self ) -> _Swier11W { _Swier11W { w : self } } # [ doc = "Bit 12 - Software Interrupt on line 12" ] # [ inline ( always ) ] pub fn swier12 ( & mut self ) -> _Swier12W { _Swier12W { w : self } } # [ doc = "Bit 13 - Software Interrupt on line 13" ] # [ inline ( always ) ] pub fn swier13 ( & mut self ) -> _Swier13W { _Swier13W { w : self } } # [ doc = "Bit 14 - Software Interrupt on line 14" ] # [ inline ( always ) ] pub fn swier14 ( & mut self ) -> _Swier14W { _Swier14W { w : self } } # [ doc = "Bit 15 - Software Interrupt on line 15" ] # [ inline ( always ) ] pub fn swier15 ( & mut self ) -> _Swier15W { _Swier15W { w : self } } # [ doc = "Bit 16 - Software Interrupt on line 16" ] # [ inline ( always ) ] pub fn swier16 ( & mut self ) -> _Swier16W { _Swier16W { w : self } } # [ doc = "Bit 17 - Software Interrupt on line 17" ] # [ inline ( always ) ] pub fn swier17 ( & mut self ) -> _Swier17W { _Swier17W { w : self } } # [ doc = "Bit 18 - Software Interrupt on line 18" ] # [ inline ( always ) ] pub fn swier18 ( & mut self ) -> _Swier18W { _Swier18W { w : self } } # [ doc = "Bit 19 - Software Interrupt on line 19" ] # [ inline ( always ) ] pub fn swier19 ( & mut self ) -> _Swier19W { _Swier19W { w : self } } # [ doc = "Bit 20 - Software Interrupt on line 20" ] # [ inline ( always ) ] pub fn swier20 ( & mut self ) -> _Swier20W { _Swier20W { w : self } } # [ doc = "Bit 21 - Software Interrupt on line 21" ] # [ inline ( always ) ] pub fn swier21 ( & mut self ) -> _Swier21W { _Swier21W { w : self } } # [ doc = "Bit 22 - Software Interrupt on line 22" ] # [ inline ( always ) ] pub fn swier22 ( & mut self ) -> _Swier22W { _Swier22W { w : self } } } } # [ doc = "Pending register (EXTI_PR)" ] pub struct Pr { register : VolatileCell < u32 > } # [ doc = "Pending register (EXTI_PR)" ] pub mod pr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Pr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Pr0R { bits : u8 , } impl Pr0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr1R { bits : u8 , } impl Pr1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr2R { bits : u8 , } impl Pr2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr3R { bits : u8 , } impl Pr3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr4R { bits : u8 , } impl Pr4R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr5R { bits : u8 , } impl Pr5R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr6R { bits : u8 , } impl Pr6R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr7R { bits : u8 , } impl Pr7R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr8R { bits : u8 , } impl Pr8R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr9R { bits : u8 , } impl Pr9R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr10R { bits : u8 , } impl Pr10R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr11R { bits : u8 , } impl Pr11R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr12R { bits : u8 , } impl Pr12R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr13R { bits : u8 , } impl Pr13R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr14R { bits : u8 , } impl Pr14R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr15R { bits : u8 , } impl Pr15R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr16R { bits : u8 , } impl Pr16R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr17R { bits : u8 , } impl Pr17R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr18R { bits : u8 , } impl Pr18R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr19R { bits : u8 , } impl Pr19R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr20R { bits : u8 , } impl Pr20R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr21R { bits : u8 , } impl Pr21R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Pr22R { bits : u8 , } impl Pr22R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Pr0W < 'a > { w : & 'a mut W , } impl < 'a > _Pr0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr1W < 'a > { w : & 'a mut W , } impl < 'a > _Pr1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr2W < 'a > { w : & 'a mut W , } impl < 'a > _Pr2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr3W < 'a > { w : & 'a mut W , } impl < 'a > _Pr3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr4W < 'a > { w : & 'a mut W , } impl < 'a > _Pr4W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr5W < 'a > { w : & 'a mut W , } impl < 'a > _Pr5W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr6W < 'a > { w : & 'a mut W , } impl < 'a > _Pr6W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr7W < 'a > { w : & 'a mut W , } impl < 'a > _Pr7W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr8W < 'a > { w : & 'a mut W , } impl < 'a > _Pr8W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr9W < 'a > { w : & 'a mut W , } impl < 'a > _Pr9W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr10W < 'a > { w : & 'a mut W , } impl < 'a > _Pr10W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr11W < 'a > { w : & 'a mut W , } impl < 'a > _Pr11W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr12W < 'a > { w : & 'a mut W , } impl < 'a > _Pr12W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr13W < 'a > { w : & 'a mut W , } impl < 'a > _Pr13W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr14W < 'a > { w : & 'a mut W , } impl < 'a > _Pr14W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr15W < 'a > { w : & 'a mut W , } impl < 'a > _Pr15W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr16W < 'a > { w : & 'a mut W , } impl < 'a > _Pr16W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr17W < 'a > { w : & 'a mut W , } impl < 'a > _Pr17W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr18W < 'a > { w : & 'a mut W , } impl < 'a > _Pr18W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr19W < 'a > { w : & 'a mut W , } impl < 'a > _Pr19W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr20W < 'a > { w : & 'a mut W , } impl < 'a > _Pr20W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr21W < 'a > { w : & 'a mut W , } impl < 'a > _Pr21W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Pr22W < 'a > { w : & 'a mut W , } impl < 'a > _Pr22W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Pending bit 0" ] # [ inline ( always ) ] pub fn pr0 ( & self ) -> Pr0R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr0R { bits } } # [ doc = "Bit 1 - Pending bit 1" ] # [ inline ( always ) ] pub fn pr1 ( & self ) -> Pr1R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr1R { bits } } # [ doc = "Bit 2 - Pending bit 2" ] # [ inline ( always ) ] pub fn pr2 ( & self ) -> Pr2R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr2R { bits } } # [ doc = "Bit 3 - Pending bit 3" ] # [ inline ( always ) ] pub fn pr3 ( & self ) -> Pr3R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr3R { bits } } # [ doc = "Bit 4 - Pending bit 4" ] # [ inline ( always ) ] pub fn pr4 ( & self ) -> Pr4R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr4R { bits } } # [ doc = "Bit 5 - Pending bit 5" ] # [ inline ( always ) ] pub fn pr5 ( & self ) -> Pr5R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr5R { bits } } # [ doc = "Bit 6 - Pending bit 6" ] # [ inline ( always ) ] pub fn pr6 ( & self ) -> Pr6R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr6R { bits } } # [ doc = "Bit 7 - Pending bit 7" ] # [ inline ( always ) ] pub fn pr7 ( & self ) -> Pr7R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr7R { bits } } # [ doc = "Bit 8 - Pending bit 8" ] # [ inline ( always ) ] pub fn pr8 ( & self ) -> Pr8R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr8R { bits } } # [ doc = "Bit 9 - Pending bit 9" ] # [ inline ( always ) ] pub fn pr9 ( & self ) -> Pr9R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr9R { bits } } # [ doc = "Bit 10 - Pending bit 10" ] # [ inline ( always ) ] pub fn pr10 ( & self ) -> Pr10R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr10R { bits } } # [ doc = "Bit 11 - Pending bit 11" ] # [ inline ( always ) ] pub fn pr11 ( & self ) -> Pr11R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr11R { bits } } # [ doc = "Bit 12 - Pending bit 12" ] # [ inline ( always ) ] pub fn pr12 ( & self ) -> Pr12R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr12R { bits } } # [ doc = "Bit 13 - Pending bit 13" ] # [ inline ( always ) ] pub fn pr13 ( & self ) -> Pr13R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr13R { bits } } # [ doc = "Bit 14 - Pending bit 14" ] # [ inline ( always ) ] pub fn pr14 ( & self ) -> Pr14R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr14R { bits } } # [ doc = "Bit 15 - Pending bit 15" ] # [ inline ( always ) ] pub fn pr15 ( & self ) -> Pr15R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr15R { bits } } # [ doc = "Bit 16 - Pending bit 16" ] # [ inline ( always ) ] pub fn pr16 ( & self ) -> Pr16R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr16R { bits } } # [ doc = "Bit 17 - Pending bit 17" ] # [ inline ( always ) ] pub fn pr17 ( & self ) -> Pr17R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr17R { bits } } # [ doc = "Bit 18 - Pending bit 18" ] # [ inline ( always ) ] pub fn pr18 ( & self ) -> Pr18R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr18R { bits } } # [ doc = "Bit 19 - Pending bit 19" ] # [ inline ( always ) ] pub fn pr19 ( & self ) -> Pr19R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr19R { bits } } # [ doc = "Bit 20 - Pending bit 20" ] # [ inline ( always ) ] pub fn pr20 ( & self ) -> Pr20R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr20R { bits } } # [ doc = "Bit 21 - Pending bit 21" ] # [ inline ( always ) ] pub fn pr21 ( & self ) -> Pr21R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr21R { bits } } # [ doc = "Bit 22 - Pending bit 22" ] # [ inline ( always ) ] pub fn pr22 ( & self ) -> Pr22R { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Pr22R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Pending bit 0" ] # [ inline ( always ) ] pub fn pr0 ( & mut self ) -> _Pr0W { _Pr0W { w : self } } # [ doc = "Bit 1 - Pending bit 1" ] # [ inline ( always ) ] pub fn pr1 ( & mut self ) -> _Pr1W { _Pr1W { w : self } } # [ doc = "Bit 2 - Pending bit 2" ] # [ inline ( always ) ] pub fn pr2 ( & mut self ) -> _Pr2W { _Pr2W { w : self } } # [ doc = "Bit 3 - Pending bit 3" ] # [ inline ( always ) ] pub fn pr3 ( & mut self ) -> _Pr3W { _Pr3W { w : self } } # [ doc = "Bit 4 - Pending bit 4" ] # [ inline ( always ) ] pub fn pr4 ( & mut self ) -> _Pr4W { _Pr4W { w : self } } # [ doc = "Bit 5 - Pending bit 5" ] # [ inline ( always ) ] pub fn pr5 ( & mut self ) -> _Pr5W { _Pr5W { w : self } } # [ doc = "Bit 6 - Pending bit 6" ] # [ inline ( always ) ] pub fn pr6 ( & mut self ) -> _Pr6W { _Pr6W { w : self } } # [ doc = "Bit 7 - Pending bit 7" ] # [ inline ( always ) ] pub fn pr7 ( & mut self ) -> _Pr7W { _Pr7W { w : self } } # [ doc = "Bit 8 - Pending bit 8" ] # [ inline ( always ) ] pub fn pr8 ( & mut self ) -> _Pr8W { _Pr8W { w : self } } # [ doc = "Bit 9 - Pending bit 9" ] # [ inline ( always ) ] pub fn pr9 ( & mut self ) -> _Pr9W { _Pr9W { w : self } } # [ doc = "Bit 10 - Pending bit 10" ] # [ inline ( always ) ] pub fn pr10 ( & mut self ) -> _Pr10W { _Pr10W { w : self } } # [ doc = "Bit 11 - Pending bit 11" ] # [ inline ( always ) ] pub fn pr11 ( & mut self ) -> _Pr11W { _Pr11W { w : self } } # [ doc = "Bit 12 - Pending bit 12" ] # [ inline ( always ) ] pub fn pr12 ( & mut self ) -> _Pr12W { _Pr12W { w : self } } # [ doc = "Bit 13 - Pending bit 13" ] # [ inline ( always ) ] pub fn pr13 ( & mut self ) -> _Pr13W { _Pr13W { w : self } } # [ doc = "Bit 14 - Pending bit 14" ] # [ inline ( always ) ] pub fn pr14 ( & mut self ) -> _Pr14W { _Pr14W { w : self } } # [ doc = "Bit 15 - Pending bit 15" ] # [ inline ( always ) ] pub fn pr15 ( & mut self ) -> _Pr15W { _Pr15W { w : self } } # [ doc = "Bit 16 - Pending bit 16" ] # [ inline ( always ) ] pub fn pr16 ( & mut self ) -> _Pr16W { _Pr16W { w : self } } # [ doc = "Bit 17 - Pending bit 17" ] # [ inline ( always ) ] pub fn pr17 ( & mut self ) -> _Pr17W { _Pr17W { w : self } } # [ doc = "Bit 18 - Pending bit 18" ] # [ inline ( always ) ] pub fn pr18 ( & mut self ) -> _Pr18W { _Pr18W { w : self } } # [ doc = "Bit 19 - Pending bit 19" ] # [ inline ( always ) ] pub fn pr19 ( & mut self ) -> _Pr19W { _Pr19W { w : self } } # [ doc = "Bit 20 - Pending bit 20" ] # [ inline ( always ) ] pub fn pr20 ( & mut self ) -> _Pr20W { _Pr20W { w : self } } # [ doc = "Bit 21 - Pending bit 21" ] # [ inline ( always ) ] pub fn pr21 ( & mut self ) -> _Pr21W { _Pr21W { w : self } } # [ doc = "Bit 22 - Pending bit 22" ] # [ inline ( always ) ] pub fn pr22 ( & mut self ) -> _Pr22W { _Pr22W { w : self } } } } } # [ doc = "External interrupt/event controller" ] pub struct Exti { register_block : exti :: RegisterBlock } impl Deref for Exti { type Target = exti :: RegisterBlock ; fn deref ( & self ) -> & exti :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go high speed" ] pub const OTG_HS_GLOBAL : Peripheral < OtgHsGlobal > = unsafe { Peripheral :: new ( 1074003968 ) } ; # [ doc = "USB on the go high speed" ] pub mod otg_hs_global { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_HS control and status register" ] pub otg_hs_gotgctl : OtgHsGotgctl , # [ doc = "0x04 - OTG_HS interrupt register" ] pub otg_hs_gotgint : OtgHsGotgint , # [ doc = "0x08 - OTG_HS AHB configuration register" ] pub otg_hs_gahbcfg : OtgHsGahbcfg , # [ doc = "0x0c - OTG_HS USB configuration register" ] pub otg_hs_gusbcfg : OtgHsGusbcfg , # [ doc = "0x10 - OTG_HS reset register" ] pub otg_hs_grstctl : OtgHsGrstctl , # [ doc = "0x14 - OTG_HS core interrupt register" ] pub otg_hs_gintsts : OtgHsGintsts , # [ doc = "0x18 - OTG_HS interrupt mask register" ] pub otg_hs_gintmsk : OtgHsGintmsk , # [ doc = "0x1c - OTG_HS Receive status debug read register (host mode)" ] pub otg_hs_grxstsr_host : OtgHsGrxstsrHost , # [ doc = "0x20 - OTG_HS status read and pop register (host mode)" ] pub otg_hs_grxstsp_host : OtgHsGrxstspHost , # [ doc = "0x24 - OTG_HS Receive FIFO size register" ] pub otg_hs_grxfsiz : OtgHsGrxfsiz , # [ doc = "0x28 - OTG_HS nonperiodic transmit FIFO size register (host mode)" ] pub otg_hs_gnptxfsiz_host : OtgHsGnptxfsizHost , # [ doc = "0x2c - OTG_HS nonperiodic transmit FIFO/queue status register" ] pub otg_hs_gnptxsts : OtgHsGnptxsts , _reserved0 : [ u8 ; 8usize ] , # [ doc = "0x38 - OTG_HS general core configuration register" ] pub otg_hs_gccfg : OtgHsGccfg , # [ doc = "0x3c - OTG_HS core ID register" ] pub otg_hs_cid : OtgHsCid , _reserved1 : [ u8 ; 192usize ] , # [ doc = "0x100 - OTG_HS Host periodic transmit FIFO size register" ] pub otg_hs_hptxfsiz : OtgHsHptxfsiz , # [ doc = "0x104 - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf1 : OtgHsDieptxf1 , # [ doc = "0x108 - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf2 : OtgHsDieptxf2 , _reserved2 : [ u8 ; 16usize ] , # [ doc = "0x11c - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf3 : OtgHsDieptxf3 , # [ doc = "0x120 - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf4 : OtgHsDieptxf4 , # [ doc = "0x124 - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf5 : OtgHsDieptxf5 , # [ doc = "0x128 - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf6 : OtgHsDieptxf6 , # [ doc = "0x12c - OTG_HS device IN endpoint transmit FIFO size register" ] pub otg_hs_dieptxf7 : OtgHsDieptxf7 , } # [ doc = "OTG_HS control and status register" ] pub struct OtgHsGotgctl { register : VolatileCell < u32 > } # [ doc = "OTG_HS control and status register" ] pub mod otg_hs_gotgctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGotgctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SrqscsR { bits : u8 , } impl SrqscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqR { bits : u8 , } impl SrqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HngscsR { bits : u8 , } impl HngscsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnprqR { bits : u8 , } impl HnprqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HshnpenR { bits : u8 , } impl HshnpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DhnpenR { bits : u8 , } impl DhnpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidstsR { bits : u8 , } impl CidstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbctR { bits : u8 , } impl DbctR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AsvldR { bits : u8 , } impl AsvldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BsvldR { bits : u8 , } impl BsvldR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SrqW < 'a > { w : & 'a mut W , } impl < 'a > _SrqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnprqW < 'a > { w : & 'a mut W , } impl < 'a > _HnprqW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HshnpenW < 'a > { w : & 'a mut W , } impl < 'a > _HshnpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DhnpenW < 'a > { w : & 'a mut W , } impl < 'a > _DhnpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Session request success" ] # [ inline ( always ) ] pub fn srqscs ( & self ) -> SrqscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqscsR { bits } } # [ doc = "Bit 1 - Session request" ] # [ inline ( always ) ] pub fn srq ( & self ) -> SrqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqR { bits } } # [ doc = "Bit 8 - Host negotiation success" ] # [ inline ( always ) ] pub fn hngscs ( & self ) -> HngscsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HngscsR { bits } } # [ doc = "Bit 9 - HNP request" ] # [ inline ( always ) ] pub fn hnprq ( & self ) -> HnprqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnprqR { bits } } # [ doc = "Bit 10 - Host set HNP enable" ] # [ inline ( always ) ] pub fn hshnpen ( & self ) -> HshnpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HshnpenR { bits } } # [ doc = "Bit 11 - Device HNP enabled" ] # [ inline ( always ) ] pub fn dhnpen ( & self ) -> DhnpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DhnpenR { bits } } # [ doc = "Bit 16 - Connector ID status" ] # [ inline ( always ) ] pub fn cidsts ( & self ) -> CidstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidstsR { bits } } # [ doc = "Bit 17 - Long/short debounce time" ] # [ inline ( always ) ] pub fn dbct ( & self ) -> DbctR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbctR { bits } } # [ doc = "Bit 18 - A-session valid" ] # [ inline ( always ) ] pub fn asvld ( & self ) -> AsvldR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AsvldR { bits } } # [ doc = "Bit 19 - B-session valid" ] # [ inline ( always ) ] pub fn bsvld ( & self ) -> BsvldR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BsvldR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2048 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Session request" ] # [ inline ( always ) ] pub fn srq ( & mut self ) -> _SrqW { _SrqW { w : self } } # [ doc = "Bit 9 - HNP request" ] # [ inline ( always ) ] pub fn hnprq ( & mut self ) -> _HnprqW { _HnprqW { w : self } } # [ doc = "Bit 10 - Host set HNP enable" ] # [ inline ( always ) ] pub fn hshnpen ( & mut self ) -> _HshnpenW { _HshnpenW { w : self } } # [ doc = "Bit 11 - Device HNP enabled" ] # [ inline ( always ) ] pub fn dhnpen ( & mut self ) -> _DhnpenW { _DhnpenW { w : self } } } } # [ doc = "OTG_HS interrupt register" ] pub struct OtgHsGotgint { register : VolatileCell < u32 > } # [ doc = "OTG_HS interrupt register" ] pub mod otg_hs_gotgint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGotgint { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SedetR { bits : u8 , } impl SedetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrsschgR { bits : u8 , } impl SrsschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnsschgR { bits : u8 , } impl HnsschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HngdetR { bits : u8 , } impl HngdetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AdtochgR { bits : u8 , } impl AdtochgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DbcdneR { bits : u8 , } impl DbcdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SedetW < 'a > { w : & 'a mut W , } impl < 'a > _SedetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrsschgW < 'a > { w : & 'a mut W , } impl < 'a > _SrsschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnsschgW < 'a > { w : & 'a mut W , } impl < 'a > _HnsschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HngdetW < 'a > { w : & 'a mut W , } impl < 'a > _HngdetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AdtochgW < 'a > { w : & 'a mut W , } impl < 'a > _AdtochgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DbcdneW < 'a > { w : & 'a mut W , } impl < 'a > _DbcdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 2 - Session end detected" ] # [ inline ( always ) ] pub fn sedet ( & self ) -> SedetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SedetR { bits } } # [ doc = "Bit 8 - Session request success status change" ] # [ inline ( always ) ] pub fn srsschg ( & self ) -> SrsschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrsschgR { bits } } # [ doc = "Bit 9 - Host negotiation success status change" ] # [ inline ( always ) ] pub fn hnsschg ( & self ) -> HnsschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnsschgR { bits } } # [ doc = "Bit 17 - Host negotiation detected" ] # [ inline ( always ) ] pub fn hngdet ( & self ) -> HngdetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HngdetR { bits } } # [ doc = "Bit 18 - A-device timeout change" ] # [ inline ( always ) ] pub fn adtochg ( & self ) -> AdtochgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AdtochgR { bits } } # [ doc = "Bit 19 - Debounce done" ] # [ inline ( always ) ] pub fn dbcdne ( & self ) -> DbcdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DbcdneR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 2 - Session end detected" ] # [ inline ( always ) ] pub fn sedet ( & mut self ) -> _SedetW { _SedetW { w : self } } # [ doc = "Bit 8 - Session request success status change" ] # [ inline ( always ) ] pub fn srsschg ( & mut self ) -> _SrsschgW { _SrsschgW { w : self } } # [ doc = "Bit 9 - Host negotiation success status change" ] # [ inline ( always ) ] pub fn hnsschg ( & mut self ) -> _HnsschgW { _HnsschgW { w : self } } # [ doc = "Bit 17 - Host negotiation detected" ] # [ inline ( always ) ] pub fn hngdet ( & mut self ) -> _HngdetW { _HngdetW { w : self } } # [ doc = "Bit 18 - A-device timeout change" ] # [ inline ( always ) ] pub fn adtochg ( & mut self ) -> _AdtochgW { _AdtochgW { w : self } } # [ doc = "Bit 19 - Debounce done" ] # [ inline ( always ) ] pub fn dbcdne ( & mut self ) -> _DbcdneW { _DbcdneW { w : self } } } } # [ doc = "OTG_HS AHB configuration register" ] pub struct OtgHsGahbcfg { register : VolatileCell < u32 > } # [ doc = "OTG_HS AHB configuration register" ] pub mod otg_hs_gahbcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGahbcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct GintR { bits : u8 , } impl GintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HbstlenR { bits : u8 , } impl HbstlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmaenR { bits : u8 , } impl DmaenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfelvlR { bits : u8 , } impl TxfelvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfelvlR { bits : u8 , } impl PtxfelvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _GintW < 'a > { w : & 'a mut W , } impl < 'a > _GintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HbstlenW < 'a > { w : & 'a mut W , } impl < 'a > _HbstlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DmaenW < 'a > { w : & 'a mut W , } impl < 'a > _DmaenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfelvlW < 'a > { w : & 'a mut W , } impl < 'a > _TxfelvlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfelvlW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfelvlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Global interrupt mask" ] # [ inline ( always ) ] pub fn gint ( & self ) -> GintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GintR { bits } } # [ doc = "Bits 1:4 - Burst length/type" ] # [ inline ( always ) ] pub fn hbstlen ( & self ) -> HbstlenR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HbstlenR { bits } } # [ doc = "Bit 5 - DMA enable" ] # [ inline ( always ) ] pub fn dmaen ( & self ) -> DmaenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmaenR { bits } } # [ doc = "Bit 7 - TxFIFO empty level" ] # [ inline ( always ) ] pub fn txfelvl ( & self ) -> TxfelvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfelvlR { bits } } # [ doc = "Bit 8 - Periodic TxFIFO empty level" ] # [ inline ( always ) ] pub fn ptxfelvl ( & self ) -> PtxfelvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfelvlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Global interrupt mask" ] # [ inline ( always ) ] pub fn gint ( & mut self ) -> _GintW { _GintW { w : self } } # [ doc = "Bits 1:4 - Burst length/type" ] # [ inline ( always ) ] pub fn hbstlen ( & mut self ) -> _HbstlenW { _HbstlenW { w : self } } # [ doc = "Bit 5 - DMA enable" ] # [ inline ( always ) ] pub fn dmaen ( & mut self ) -> _DmaenW { _DmaenW { w : self } } # [ doc = "Bit 7 - TxFIFO empty level" ] # [ inline ( always ) ] pub fn txfelvl ( & mut self ) -> _TxfelvlW { _TxfelvlW { w : self } } # [ doc = "Bit 8 - Periodic TxFIFO empty level" ] # [ inline ( always ) ] pub fn ptxfelvl ( & mut self ) -> _PtxfelvlW { _PtxfelvlW { w : self } } } } # [ doc = "OTG_HS USB configuration register" ] pub struct OtgHsGusbcfg { register : VolatileCell < u32 > } # [ doc = "OTG_HS USB configuration register" ] pub mod otg_hs_gusbcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGusbcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct TocalR { bits : u8 , } impl TocalR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrpcapR { bits : u8 , } impl SrpcapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HnpcapR { bits : u8 , } impl HnpcapR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TrdtR { bits : u8 , } impl TrdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PhylpcsR { bits : u8 , } impl PhylpcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpifslsR { bits : u8 , } impl UlpifslsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpiarR { bits : u8 , } impl UlpiarR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpicsmR { bits : u8 , } impl UlpicsmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpievbusdR { bits : u8 , } impl UlpievbusdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpievbusiR { bits : u8 , } impl UlpievbusiR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TsdpsR { bits : u8 , } impl TsdpsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PcciR { bits : u8 , } impl PcciR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtciR { bits : u8 , } impl PtciR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UlpiipdR { bits : u8 , } impl UlpiipdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FhmodR { bits : u8 , } impl FhmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FdmodR { bits : u8 , } impl FdmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CtxpktR { bits : u8 , } impl CtxpktR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _TocalW < 'a > { w : & 'a mut W , } impl < 'a > _TocalW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PhyselW < 'a > { w : & 'a mut W , } impl < 'a > _PhyselW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrpcapW < 'a > { w : & 'a mut W , } impl < 'a > _SrpcapW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HnpcapW < 'a > { w : & 'a mut W , } impl < 'a > _HnpcapW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TrdtW < 'a > { w : & 'a mut W , } impl < 'a > _TrdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PhylpcsW < 'a > { w : & 'a mut W , } impl < 'a > _PhylpcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpifslsW < 'a > { w : & 'a mut W , } impl < 'a > _UlpifslsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpiarW < 'a > { w : & 'a mut W , } impl < 'a > _UlpiarW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpicsmW < 'a > { w : & 'a mut W , } impl < 'a > _UlpicsmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpievbusdW < 'a > { w : & 'a mut W , } impl < 'a > _UlpievbusdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpievbusiW < 'a > { w : & 'a mut W , } impl < 'a > _UlpievbusiW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TsdpsW < 'a > { w : & 'a mut W , } impl < 'a > _TsdpsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PcciW < 'a > { w : & 'a mut W , } impl < 'a > _PcciW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtciW < 'a > { w : & 'a mut W , } impl < 'a > _PtciW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UlpiipdW < 'a > { w : & 'a mut W , } impl < 'a > _UlpiipdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FhmodW < 'a > { w : & 'a mut W , } impl < 'a > _FhmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FdmodW < 'a > { w : & 'a mut W , } impl < 'a > _FdmodW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CtxpktW < 'a > { w : & 'a mut W , } impl < 'a > _CtxpktW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:2 - FS timeout calibration" ] # [ inline ( always ) ] pub fn tocal ( & self ) -> TocalR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocalR { bits } } # [ doc = "Bit 8 - SRP-capable" ] # [ inline ( always ) ] pub fn srpcap ( & self ) -> SrpcapR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrpcapR { bits } } # [ doc = "Bit 9 - HNP-capable" ] # [ inline ( always ) ] pub fn hnpcap ( & self ) -> HnpcapR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HnpcapR { bits } } # [ doc = "Bits 10:13 - USB turnaround time" ] # [ inline ( always ) ] pub fn trdt ( & self ) -> TrdtR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TrdtR { bits } } # [ doc = "Bit 15 - PHY Low-power clock select" ] # [ inline ( always ) ] pub fn phylpcs ( & self ) -> PhylpcsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PhylpcsR { bits } } # [ doc = "Bit 17 - ULPI FS/LS select" ] # [ inline ( always ) ] pub fn ulpifsls ( & self ) -> UlpifslsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpifslsR { bits } } # [ doc = "Bit 18 - ULPI Auto-resume" ] # [ inline ( always ) ] pub fn ulpiar ( & self ) -> UlpiarR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpiarR { bits } } # [ doc = "Bit 19 - ULPI Clock SuspendM" ] # [ inline ( always ) ] pub fn ulpicsm ( & self ) -> UlpicsmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpicsmR { bits } } # [ doc = "Bit 20 - ULPI External VBUS Drive" ] # [ inline ( always ) ] pub fn ulpievbusd ( & self ) -> UlpievbusdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpievbusdR { bits } } # [ doc = "Bit 21 - ULPI external VBUS indicator" ] # [ inline ( always ) ] pub fn ulpievbusi ( & self ) -> UlpievbusiR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpievbusiR { bits } } # [ doc = "Bit 22 - TermSel DLine pulsing selection" ] # [ inline ( always ) ] pub fn tsdps ( & self ) -> TsdpsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TsdpsR { bits } } # [ doc = "Bit 23 - Indicator complement" ] # [ inline ( always ) ] pub fn pcci ( & self ) -> PcciR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 23 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcciR { bits } } # [ doc = "Bit 24 - Indicator pass through" ] # [ inline ( always ) ] pub fn ptci ( & self ) -> PtciR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtciR { bits } } # [ doc = "Bit 25 - ULPI interface protect disable" ] # [ inline ( always ) ] pub fn ulpiipd ( & self ) -> UlpiipdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UlpiipdR { bits } } # [ doc = "Bit 29 - Forced host mode" ] # [ inline ( always ) ] pub fn fhmod ( & self ) -> FhmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FhmodR { bits } } # [ doc = "Bit 30 - Forced peripheral mode" ] # [ inline ( always ) ] pub fn fdmod ( & self ) -> FdmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FdmodR { bits } } # [ doc = "Bit 31 - Corrupt Tx packet" ] # [ inline ( always ) ] pub fn ctxpkt ( & self ) -> CtxpktR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CtxpktR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 2560 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:2 - FS timeout calibration" ] # [ inline ( always ) ] pub fn tocal ( & mut self ) -> _TocalW { _TocalW { w : self } } # [ doc = "Bit 6 - USB 2.0 high-speed ULPI PHY or USB 1.1 full-speed serial transceiver select" ] # [ inline ( always ) ] pub fn physel ( & mut self ) -> _PhyselW { _PhyselW { w : self } } # [ doc = "Bit 8 - SRP-capable" ] # [ inline ( always ) ] pub fn srpcap ( & mut self ) -> _SrpcapW { _SrpcapW { w : self } } # [ doc = "Bit 9 - HNP-capable" ] # [ inline ( always ) ] pub fn hnpcap ( & mut self ) -> _HnpcapW { _HnpcapW { w : self } } # [ doc = "Bits 10:13 - USB turnaround time" ] # [ inline ( always ) ] pub fn trdt ( & mut self ) -> _TrdtW { _TrdtW { w : self } } # [ doc = "Bit 15 - PHY Low-power clock select" ] # [ inline ( always ) ] pub fn phylpcs ( & mut self ) -> _PhylpcsW { _PhylpcsW { w : self } } # [ doc = "Bit 17 - ULPI FS/LS select" ] # [ inline ( always ) ] pub fn ulpifsls ( & mut self ) -> _UlpifslsW { _UlpifslsW { w : self } } # [ doc = "Bit 18 - ULPI Auto-resume" ] # [ inline ( always ) ] pub fn ulpiar ( & mut self ) -> _UlpiarW { _UlpiarW { w : self } } # [ doc = "Bit 19 - ULPI Clock SuspendM" ] # [ inline ( always ) ] pub fn ulpicsm ( & mut self ) -> _UlpicsmW { _UlpicsmW { w : self } } # [ doc = "Bit 20 - ULPI External VBUS Drive" ] # [ inline ( always ) ] pub fn ulpievbusd ( & mut self ) -> _UlpievbusdW { _UlpievbusdW { w : self } } # [ doc = "Bit 21 - ULPI external VBUS indicator" ] # [ inline ( always ) ] pub fn ulpievbusi ( & mut self ) -> _UlpievbusiW { _UlpievbusiW { w : self } } # [ doc = "Bit 22 - TermSel DLine pulsing selection" ] # [ inline ( always ) ] pub fn tsdps ( & mut self ) -> _TsdpsW { _TsdpsW { w : self } } # [ doc = "Bit 23 - Indicator complement" ] # [ inline ( always ) ] pub fn pcci ( & mut self ) -> _PcciW { _PcciW { w : self } } # [ doc = "Bit 24 - Indicator pass through" ] # [ inline ( always ) ] pub fn ptci ( & mut self ) -> _PtciW { _PtciW { w : self } } # [ doc = "Bit 25 - ULPI interface protect disable" ] # [ inline ( always ) ] pub fn ulpiipd ( & mut self ) -> _UlpiipdW { _UlpiipdW { w : self } } # [ doc = "Bit 29 - Forced host mode" ] # [ inline ( always ) ] pub fn fhmod ( & mut self ) -> _FhmodW { _FhmodW { w : self } } # [ doc = "Bit 30 - Forced peripheral mode" ] # [ inline ( always ) ] pub fn fdmod ( & mut self ) -> _FdmodW { _FdmodW { w : self } } # [ doc = "Bit 31 - Corrupt Tx packet" ] # [ inline ( always ) ] pub fn ctxpkt ( & mut self ) -> _CtxpktW { _CtxpktW { w : self } } } } # [ doc = "OTG_HS reset register" ] pub struct OtgHsGrstctl { register : VolatileCell < u32 > } # [ doc = "OTG_HS reset register" ] pub mod otg_hs_grstctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGrstctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CsrstR { bits : u8 , } impl CsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HsrstR { bits : u8 , } impl HsrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FcrstR { bits : u8 , } impl FcrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxfflshR { bits : u8 , } impl RxfflshR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfflshR { bits : u8 , } impl TxfflshR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DmareqR { bits : u8 , } impl DmareqR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhbidlR { bits : u8 , } impl AhbidlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _CsrstW < 'a > { w : & 'a mut W , } impl < 'a > _CsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HsrstW < 'a > { w : & 'a mut W , } impl < 'a > _HsrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FcrstW < 'a > { w : & 'a mut W , } impl < 'a > _FcrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxfflshW < 'a > { w : & 'a mut W , } impl < 'a > _RxfflshW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfflshW < 'a > { w : & 'a mut W , } impl < 'a > _TxfflshW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Core soft reset" ] # [ inline ( always ) ] pub fn csrst ( & self ) -> CsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CsrstR { bits } } # [ doc = "Bit 1 - HCLK soft reset" ] # [ inline ( always ) ] pub fn hsrst ( & self ) -> HsrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HsrstR { bits } } # [ doc = "Bit 2 - Host frame counter reset" ] # [ inline ( always ) ] pub fn fcrst ( & self ) -> FcrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FcrstR { bits } } # [ doc = "Bit 4 - RxFIFO flush" ] # [ inline ( always ) ] pub fn rxfflsh ( & self ) -> RxfflshR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxfflshR { bits } } # [ doc = "Bit 5 - TxFIFO flush" ] # [ inline ( always ) ] pub fn txfflsh ( & self ) -> TxfflshR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfflshR { bits } } # [ doc = "Bits 6:10 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 31 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - DMA request signal" ] # [ inline ( always ) ] pub fn dmareq ( & self ) -> DmareqR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DmareqR { bits } } # [ doc = "Bit 31 - AHB master idle" ] # [ inline ( always ) ] pub fn ahbidl ( & self ) -> AhbidlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhbidlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 536870912 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Core soft reset" ] # [ inline ( always ) ] pub fn csrst ( & mut self ) -> _CsrstW { _CsrstW { w : self } } # [ doc = "Bit 1 - HCLK soft reset" ] # [ inline ( always ) ] pub fn hsrst ( & mut self ) -> _HsrstW { _HsrstW { w : self } } # [ doc = "Bit 2 - Host frame counter reset" ] # [ inline ( always ) ] pub fn fcrst ( & mut self ) -> _FcrstW { _FcrstW { w : self } } # [ doc = "Bit 4 - RxFIFO flush" ] # [ inline ( always ) ] pub fn rxfflsh ( & mut self ) -> _RxfflshW { _RxfflshW { w : self } } # [ doc = "Bit 5 - TxFIFO flush" ] # [ inline ( always ) ] pub fn txfflsh ( & mut self ) -> _TxfflshW { _TxfflshW { w : self } } # [ doc = "Bits 6:10 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } } } # [ doc = "OTG_HS core interrupt register" ] pub struct OtgHsGintsts { register : VolatileCell < u32 > } # [ doc = "OTG_HS core interrupt register" ] pub mod otg_hs_gintsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGintsts { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct CmodR { bits : u8 , } impl CmodR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct MmisR { bits : u8 , } impl MmisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtgintR { bits : u8 , } impl OtgintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofR { bits : u8 , } impl SofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxflvlR { bits : u8 , } impl RxflvlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfeR { bits : u8 , } impl NptxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinakeffR { bits : u8 , } impl GinakeffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BoutnakeffR { bits : u8 , } impl BoutnakeffR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EsuspR { bits : u8 , } impl EsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbsuspR { bits : u8 , } impl UsbsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbrstR { bits : u8 , } impl UsbrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumdneR { bits : u8 , } impl EnumdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IsoodrpR { bits : u8 , } impl IsoodrpR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EopfR { bits : u8 , } impl EopfR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u8 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u8 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IisoixfrR { bits : u8 , } impl IisoixfrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PxfrIncompisooutR { bits : u8 , } impl PxfrIncompisooutR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DatafsuspR { bits : u8 , } impl DatafsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HprtintR { bits : u8 , } impl HprtintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HcintR { bits : u8 , } impl HcintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfeR { bits : u8 , } impl PtxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidschgR { bits : u8 , } impl CidschgR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscintR { bits : u8 , } impl DiscintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqintR { bits : u8 , } impl SrqintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WkuintR { bits : u8 , } impl WkuintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmisW < 'a > { w : & 'a mut W , } impl < 'a > _MmisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofW < 'a > { w : & 'a mut W , } impl < 'a > _SofW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EsuspW < 'a > { w : & 'a mut W , } impl < 'a > _EsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbsuspW < 'a > { w : & 'a mut W , } impl < 'a > _UsbsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbrstW < 'a > { w : & 'a mut W , } impl < 'a > _UsbrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnumdneW < 'a > { w : & 'a mut W , } impl < 'a > _EnumdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IsoodrpW < 'a > { w : & 'a mut W , } impl < 'a > _IsoodrpW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EopfW < 'a > { w : & 'a mut W , } impl < 'a > _EopfW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IisoixfrW < 'a > { w : & 'a mut W , } impl < 'a > _IisoixfrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PxfrIncompisooutW < 'a > { w : & 'a mut W , } impl < 'a > _PxfrIncompisooutW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DatafsuspW < 'a > { w : & 'a mut W , } impl < 'a > _DatafsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CidschgW < 'a > { w : & 'a mut W , } impl < 'a > _CidschgW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscintW < 'a > { w : & 'a mut W , } impl < 'a > _DiscintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrqintW < 'a > { w : & 'a mut W , } impl < 'a > _SrqintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WkuintW < 'a > { w : & 'a mut W , } impl < 'a > _WkuintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Current mode of operation" ] # [ inline ( always ) ] pub fn cmod ( & self ) -> CmodR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CmodR { bits } } # [ doc = "Bit 1 - Mode mismatch interrupt" ] # [ inline ( always ) ] pub fn mmis ( & self ) -> MmisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmisR { bits } } # [ doc = "Bit 2 - OTG interrupt" ] # [ inline ( always ) ] pub fn otgint ( & self ) -> OtgintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgintR { bits } } # [ doc = "Bit 3 - Start of frame" ] # [ inline ( always ) ] pub fn sof ( & self ) -> SofR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofR { bits } } # [ doc = "Bit 4 - RxFIFO nonempty" ] # [ inline ( always ) ] pub fn rxflvl ( & self ) -> RxflvlR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxflvlR { bits } } # [ doc = "Bit 5 - Nonperiodic TxFIFO empty" ] # [ inline ( always ) ] pub fn nptxfe ( & self ) -> NptxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxfeR { bits } } # [ doc = "Bit 6 - Global IN nonperiodic NAK effective" ] # [ inline ( always ) ] pub fn ginakeff ( & self ) -> GinakeffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinakeffR { bits } } # [ doc = "Bit 7 - Global OUT NAK effective" ] # [ inline ( always ) ] pub fn boutnakeff ( & self ) -> BoutnakeffR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BoutnakeffR { bits } } # [ doc = "Bit 10 - Early suspend" ] # [ inline ( always ) ] pub fn esusp ( & self ) -> EsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EsuspR { bits } } # [ doc = "Bit 11 - USB suspend" ] # [ inline ( always ) ] pub fn usbsusp ( & self ) -> UsbsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbsuspR { bits } } # [ doc = "Bit 12 - USB reset" ] # [ inline ( always ) ] pub fn usbrst ( & self ) -> UsbrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbrstR { bits } } # [ doc = "Bit 13 - Enumeration done" ] # [ inline ( always ) ] pub fn enumdne ( & self ) -> EnumdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumdneR { bits } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ] # [ inline ( always ) ] pub fn isoodrp ( & self ) -> IsoodrpR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IsoodrpR { bits } } # [ doc = "Bit 15 - End of periodic frame interrupt" ] # [ inline ( always ) ] pub fn eopf ( & self ) -> EopfR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopfR { bits } } # [ doc = "Bit 18 - IN endpoint interrupt" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IepintR { bits } } # [ doc = "Bit 19 - OUT endpoint interrupt" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OepintR { bits } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ] # [ inline ( always ) ] pub fn iisoixfr ( & self ) -> IisoixfrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IisoixfrR { bits } } # [ doc = "Bit 21 - Incomplete periodic transfer" ] # [ inline ( always ) ] pub fn pxfr_incompisoout ( & self ) -> PxfrIncompisooutR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PxfrIncompisooutR { bits } } # [ doc = "Bit 22 - Data fetch suspended" ] # [ inline ( always ) ] pub fn datafsusp ( & self ) -> DatafsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DatafsuspR { bits } } # [ doc = "Bit 24 - Host port interrupt" ] # [ inline ( always ) ] pub fn hprtint ( & self ) -> HprtintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HprtintR { bits } } # [ doc = "Bit 25 - Host channels interrupt" ] # [ inline ( always ) ] pub fn hcint ( & self ) -> HcintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HcintR { bits } } # [ doc = "Bit 26 - Periodic TxFIFO empty" ] # [ inline ( always ) ] pub fn ptxfe ( & self ) -> PtxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfeR { bits } } # [ doc = "Bit 28 - Connector ID status change" ] # [ inline ( always ) ] pub fn cidschg ( & self ) -> CidschgR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidschgR { bits } } # [ doc = "Bit 29 - Disconnect detected interrupt" ] # [ inline ( always ) ] pub fn discint ( & self ) -> DiscintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscintR { bits } } # [ doc = "Bit 30 - Session request/new session detected interrupt" ] # [ inline ( always ) ] pub fn srqint ( & self ) -> SrqintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqintR { bits } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ] # [ inline ( always ) ] pub fn wkuint ( & self ) -> WkuintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WkuintR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 67108896 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Mode mismatch interrupt" ] # [ inline ( always ) ] pub fn mmis ( & mut self ) -> _MmisW { _MmisW { w : self } } # [ doc = "Bit 3 - Start of frame" ] # [ inline ( always ) ] pub fn sof ( & mut self ) -> _SofW { _SofW { w : self } } # [ doc = "Bit 10 - Early suspend" ] # [ inline ( always ) ] pub fn esusp ( & mut self ) -> _EsuspW { _EsuspW { w : self } } # [ doc = "Bit 11 - USB suspend" ] # [ inline ( always ) ] pub fn usbsusp ( & mut self ) -> _UsbsuspW { _UsbsuspW { w : self } } # [ doc = "Bit 12 - USB reset" ] # [ inline ( always ) ] pub fn usbrst ( & mut self ) -> _UsbrstW { _UsbrstW { w : self } } # [ doc = "Bit 13 - Enumeration done" ] # [ inline ( always ) ] pub fn enumdne ( & mut self ) -> _EnumdneW { _EnumdneW { w : self } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ] # [ inline ( always ) ] pub fn isoodrp ( & mut self ) -> _IsoodrpW { _IsoodrpW { w : self } } # [ doc = "Bit 15 - End of periodic frame interrupt" ] # [ inline ( always ) ] pub fn eopf ( & mut self ) -> _EopfW { _EopfW { w : self } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ] # [ inline ( always ) ] pub fn iisoixfr ( & mut self ) -> _IisoixfrW { _IisoixfrW { w : self } } # [ doc = "Bit 21 - Incomplete periodic transfer" ] # [ inline ( always ) ] pub fn pxfr_incompisoout ( & mut self ) -> _PxfrIncompisooutW { _PxfrIncompisooutW { w : self } } # [ doc = "Bit 22 - Data fetch suspended" ] # [ inline ( always ) ] pub fn datafsusp ( & mut self ) -> _DatafsuspW { _DatafsuspW { w : self } } # [ doc = "Bit 28 - Connector ID status change" ] # [ inline ( always ) ] pub fn cidschg ( & mut self ) -> _CidschgW { _CidschgW { w : self } } # [ doc = "Bit 29 - Disconnect detected interrupt" ] # [ inline ( always ) ] pub fn discint ( & mut self ) -> _DiscintW { _DiscintW { w : self } } # [ doc = "Bit 30 - Session request/new session detected interrupt" ] # [ inline ( always ) ] pub fn srqint ( & mut self ) -> _SrqintW { _SrqintW { w : self } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ] # [ inline ( always ) ] pub fn wkuint ( & mut self ) -> _WkuintW { _WkuintW { w : self } } } } # [ doc = "OTG_HS interrupt mask register" ] pub struct OtgHsGintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS interrupt mask register" ] pub mod otg_hs_gintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MmismR { bits : u8 , } impl MmismR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtgintR { bits : u8 , } impl OtgintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofmR { bits : u8 , } impl SofmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxflvlmR { bits : u8 , } impl RxflvlmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfemR { bits : u8 , } impl NptxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinakeffmR { bits : u8 , } impl GinakeffmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GonakeffmR { bits : u8 , } impl GonakeffmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EsuspmR { bits : u8 , } impl EsuspmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbsuspmR { bits : u8 , } impl UsbsuspmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbrstR { bits : u8 , } impl UsbrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumdnemR { bits : u8 , } impl EnumdnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IsoodrpmR { bits : u8 , } impl IsoodrpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EopfmR { bits : u8 , } impl EopfmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpmismR { bits : u8 , } impl EpmismR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u8 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u8 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IisoixfrmR { bits : u8 , } impl IisoixfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PxfrmIisooxfrmR { bits : u8 , } impl PxfrmIisooxfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FsuspmR { bits : u8 , } impl FsuspmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PrtimR { bits : u8 , } impl PrtimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HcimR { bits : u8 , } impl HcimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfemR { bits : u8 , } impl PtxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct CidschgmR { bits : u8 , } impl CidschgmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DiscintR { bits : u8 , } impl DiscintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SrqimR { bits : u8 , } impl SrqimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct WuimR { bits : u8 , } impl WuimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MmismW < 'a > { w : & 'a mut W , } impl < 'a > _MmismW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtgintW < 'a > { w : & 'a mut W , } impl < 'a > _OtgintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofmW < 'a > { w : & 'a mut W , } impl < 'a > _SofmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxflvlmW < 'a > { w : & 'a mut W , } impl < 'a > _RxflvlmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NptxfemW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GinakeffmW < 'a > { w : & 'a mut W , } impl < 'a > _GinakeffmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GonakeffmW < 'a > { w : & 'a mut W , } impl < 'a > _GonakeffmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EsuspmW < 'a > { w : & 'a mut W , } impl < 'a > _EsuspmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbsuspmW < 'a > { w : & 'a mut W , } impl < 'a > _UsbsuspmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbrstW < 'a > { w : & 'a mut W , } impl < 'a > _UsbrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EnumdnemW < 'a > { w : & 'a mut W , } impl < 'a > _EnumdnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IsoodrpmW < 'a > { w : & 'a mut W , } impl < 'a > _IsoodrpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EopfmW < 'a > { w : & 'a mut W , } impl < 'a > _EopfmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpmismW < 'a > { w : & 'a mut W , } impl < 'a > _EpmismW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IepintW < 'a > { w : & 'a mut W , } impl < 'a > _IepintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OepintW < 'a > { w : & 'a mut W , } impl < 'a > _OepintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IisoixfrmW < 'a > { w : & 'a mut W , } impl < 'a > _IisoixfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PxfrmIisooxfrmW < 'a > { w : & 'a mut W , } impl < 'a > _PxfrmIisooxfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FsuspmW < 'a > { w : & 'a mut W , } impl < 'a > _FsuspmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HcimW < 'a > { w : & 'a mut W , } impl < 'a > _HcimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfemW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CidschgmW < 'a > { w : & 'a mut W , } impl < 'a > _CidschgmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DiscintW < 'a > { w : & 'a mut W , } impl < 'a > _DiscintW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SrqimW < 'a > { w : & 'a mut W , } impl < 'a > _SrqimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _WuimW < 'a > { w : & 'a mut W , } impl < 'a > _WuimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - Mode mismatch interrupt mask" ] # [ inline ( always ) ] pub fn mmism ( & self ) -> MmismR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MmismR { bits } } # [ doc = "Bit 2 - OTG interrupt mask" ] # [ inline ( always ) ] pub fn otgint ( & self ) -> OtgintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtgintR { bits } } # [ doc = "Bit 3 - Start of frame mask" ] # [ inline ( always ) ] pub fn sofm ( & self ) -> SofmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofmR { bits } } # [ doc = "Bit 4 - Receive FIFO nonempty mask" ] # [ inline ( always ) ] pub fn rxflvlm ( & self ) -> RxflvlmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxflvlmR { bits } } # [ doc = "Bit 5 - Nonperiodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn nptxfem ( & self ) -> NptxfemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxfemR { bits } } # [ doc = "Bit 6 - Global nonperiodic IN NAK effective mask" ] # [ inline ( always ) ] pub fn ginakeffm ( & self ) -> GinakeffmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinakeffmR { bits } } # [ doc = "Bit 7 - Global OUT NAK effective mask" ] # [ inline ( always ) ] pub fn gonakeffm ( & self ) -> GonakeffmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GonakeffmR { bits } } # [ doc = "Bit 10 - Early suspend mask" ] # [ inline ( always ) ] pub fn esuspm ( & self ) -> EsuspmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EsuspmR { bits } } # [ doc = "Bit 11 - USB suspend mask" ] # [ inline ( always ) ] pub fn usbsuspm ( & self ) -> UsbsuspmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbsuspmR { bits } } # [ doc = "Bit 12 - USB reset mask" ] # [ inline ( always ) ] pub fn usbrst ( & self ) -> UsbrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbrstR { bits } } # [ doc = "Bit 13 - Enumeration done mask" ] # [ inline ( always ) ] pub fn enumdnem ( & self ) -> EnumdnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumdnemR { bits } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ] # [ inline ( always ) ] pub fn isoodrpm ( & self ) -> IsoodrpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IsoodrpmR { bits } } # [ doc = "Bit 15 - End of periodic frame interrupt mask" ] # [ inline ( always ) ] pub fn eopfm ( & self ) -> EopfmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EopfmR { bits } } # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ] # [ inline ( always ) ] pub fn epmism ( & self ) -> EpmismR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpmismR { bits } } # [ doc = "Bit 18 - IN endpoints interrupt mask" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IepintR { bits } } # [ doc = "Bit 19 - OUT endpoints interrupt mask" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OepintR { bits } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ] # [ inline ( always ) ] pub fn iisoixfrm ( & self ) -> IisoixfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IisoixfrmR { bits } } # [ doc = "Bit 21 - Incomplete periodic transfer mask" ] # [ inline ( always ) ] pub fn pxfrm_iisooxfrm ( & self ) -> PxfrmIisooxfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PxfrmIisooxfrmR { bits } } # [ doc = "Bit 22 - Data fetch suspended mask" ] # [ inline ( always ) ] pub fn fsuspm ( & self ) -> FsuspmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FsuspmR { bits } } # [ doc = "Bit 24 - Host port interrupt mask" ] # [ inline ( always ) ] pub fn prtim ( & self ) -> PrtimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtimR { bits } } # [ doc = "Bit 25 - Host channels interrupt mask" ] # [ inline ( always ) ] pub fn hcim ( & self ) -> HcimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 25 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HcimR { bits } } # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ptxfem ( & self ) -> PtxfemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxfemR { bits } } # [ doc = "Bit 28 - Connector ID status change mask" ] # [ inline ( always ) ] pub fn cidschgm ( & self ) -> CidschgmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; CidschgmR { bits } } # [ doc = "Bit 29 - Disconnect detected interrupt mask" ] # [ inline ( always ) ] pub fn discint ( & self ) -> DiscintR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DiscintR { bits } } # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ] # [ inline ( always ) ] pub fn srqim ( & self ) -> SrqimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SrqimR { bits } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ] # [ inline ( always ) ] pub fn wuim ( & self ) -> WuimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; WuimR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Mode mismatch interrupt mask" ] # [ inline ( always ) ] pub fn mmism ( & mut self ) -> _MmismW { _MmismW { w : self } } # [ doc = "Bit 2 - OTG interrupt mask" ] # [ inline ( always ) ] pub fn otgint ( & mut self ) -> _OtgintW { _OtgintW { w : self } } # [ doc = "Bit 3 - Start of frame mask" ] # [ inline ( always ) ] pub fn sofm ( & mut self ) -> _SofmW { _SofmW { w : self } } # [ doc = "Bit 4 - Receive FIFO nonempty mask" ] # [ inline ( always ) ] pub fn rxflvlm ( & mut self ) -> _RxflvlmW { _RxflvlmW { w : self } } # [ doc = "Bit 5 - Nonperiodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn nptxfem ( & mut self ) -> _NptxfemW { _NptxfemW { w : self } } # [ doc = "Bit 6 - Global nonperiodic IN NAK effective mask" ] # [ inline ( always ) ] pub fn ginakeffm ( & mut self ) -> _GinakeffmW { _GinakeffmW { w : self } } # [ doc = "Bit 7 - Global OUT NAK effective mask" ] # [ inline ( always ) ] pub fn gonakeffm ( & mut self ) -> _GonakeffmW { _GonakeffmW { w : self } } # [ doc = "Bit 10 - Early suspend mask" ] # [ inline ( always ) ] pub fn esuspm ( & mut self ) -> _EsuspmW { _EsuspmW { w : self } } # [ doc = "Bit 11 - USB suspend mask" ] # [ inline ( always ) ] pub fn usbsuspm ( & mut self ) -> _UsbsuspmW { _UsbsuspmW { w : self } } # [ doc = "Bit 12 - USB reset mask" ] # [ inline ( always ) ] pub fn usbrst ( & mut self ) -> _UsbrstW { _UsbrstW { w : self } } # [ doc = "Bit 13 - Enumeration done mask" ] # [ inline ( always ) ] pub fn enumdnem ( & mut self ) -> _EnumdnemW { _EnumdnemW { w : self } } # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ] # [ inline ( always ) ] pub fn isoodrpm ( & mut self ) -> _IsoodrpmW { _IsoodrpmW { w : self } } # [ doc = "Bit 15 - End of periodic frame interrupt mask" ] # [ inline ( always ) ] pub fn eopfm ( & mut self ) -> _EopfmW { _EopfmW { w : self } } # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ] # [ inline ( always ) ] pub fn epmism ( & mut self ) -> _EpmismW { _EpmismW { w : self } } # [ doc = "Bit 18 - IN endpoints interrupt mask" ] # [ inline ( always ) ] pub fn iepint ( & mut self ) -> _IepintW { _IepintW { w : self } } # [ doc = "Bit 19 - OUT endpoints interrupt mask" ] # [ inline ( always ) ] pub fn oepint ( & mut self ) -> _OepintW { _OepintW { w : self } } # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ] # [ inline ( always ) ] pub fn iisoixfrm ( & mut self ) -> _IisoixfrmW { _IisoixfrmW { w : self } } # [ doc = "Bit 21 - Incomplete periodic transfer mask" ] # [ inline ( always ) ] pub fn pxfrm_iisooxfrm ( & mut self ) -> _PxfrmIisooxfrmW { _PxfrmIisooxfrmW { w : self } } # [ doc = "Bit 22 - Data fetch suspended mask" ] # [ inline ( always ) ] pub fn fsuspm ( & mut self ) -> _FsuspmW { _FsuspmW { w : self } } # [ doc = "Bit 25 - Host channels interrupt mask" ] # [ inline ( always ) ] pub fn hcim ( & mut self ) -> _HcimW { _HcimW { w : self } } # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ptxfem ( & mut self ) -> _PtxfemW { _PtxfemW { w : self } } # [ doc = "Bit 28 - Connector ID status change mask" ] # [ inline ( always ) ] pub fn cidschgm ( & mut self ) -> _CidschgmW { _CidschgmW { w : self } } # [ doc = "Bit 29 - Disconnect detected interrupt mask" ] # [ inline ( always ) ] pub fn discint ( & mut self ) -> _DiscintW { _DiscintW { w : self } } # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ] # [ inline ( always ) ] pub fn srqim ( & mut self ) -> _SrqimW { _SrqimW { w : self } } # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ] # [ inline ( always ) ] pub fn wuim ( & mut self ) -> _WuimW { _WuimW { w : self } } } } # [ doc = "OTG_HS Receive status debug read register (host mode)" ] pub struct OtgHsGrxstsrHost { register : VolatileCell < u32 > } # [ doc = "OTG_HS Receive status debug read register (host mode)" ] pub mod otg_hs_grxstsr_host { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsGrxstsrHost { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct ChnumR { bits : u8 , } impl ChnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Channel number" ] # [ inline ( always ) ] pub fn chnum ( & self ) -> ChnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } } } # [ doc = "OTG_HS status read and pop register (host mode)" ] pub struct OtgHsGrxstspHost { register : VolatileCell < u32 > } # [ doc = "OTG_HS status read and pop register (host mode)" ] pub mod otg_hs_grxstsp_host { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsGrxstspHost { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct ChnumR { bits : u8 , } impl ChnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Channel number" ] # [ inline ( always ) ] pub fn chnum ( & self ) -> ChnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } } } # [ doc = "OTG_HS Receive FIFO size register" ] pub struct OtgHsGrxfsiz { register : VolatileCell < u32 > } # [ doc = "OTG_HS Receive FIFO size register" ] pub mod otg_hs_grxfsiz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGrxfsiz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RxfdR { bits : u16 , } impl RxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _RxfdW < 'a > { w : & 'a mut W , } impl < 'a > _RxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - RxFIFO depth" ] # [ inline ( always ) ] pub fn rxfd ( & self ) -> RxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - RxFIFO depth" ] # [ inline ( always ) ] pub fn rxfd ( & mut self ) -> _RxfdW { _RxfdW { w : self } } } } # [ doc = "OTG_HS nonperiodic transmit FIFO size register (host mode)" ] pub struct OtgHsGnptxfsizHost { register : VolatileCell < u32 > } # [ doc = "OTG_HS nonperiodic transmit FIFO size register (host mode)" ] pub mod otg_hs_gnptxfsiz_host { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGnptxfsizHost { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NptxfsaR { bits : u16 , } impl NptxfsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxfdR { bits : u16 , } impl NptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _NptxfsaW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _NptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Nonperiodic transmit RAM start address" ] # [ inline ( always ) ] pub fn nptxfsa ( & self ) -> NptxfsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfsaR { bits } } # [ doc = "Bits 16:31 - Nonperiodic TxFIFO depth" ] # [ inline ( always ) ] pub fn nptxfd ( & self ) -> NptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Nonperiodic transmit RAM start address" ] # [ inline ( always ) ] pub fn nptxfsa ( & mut self ) -> _NptxfsaW { _NptxfsaW { w : self } } # [ doc = "Bits 16:31 - Nonperiodic TxFIFO depth" ] # [ inline ( always ) ] pub fn nptxfd ( & mut self ) -> _NptxfdW { _NptxfdW { w : self } } } } # [ doc = "Endpoint 0 transmit FIFO size (peripheral mode)" ] pub struct OtgHsTx0fsizPeripheral { register : VolatileCell < u32 > } # [ doc = "Endpoint 0 transmit FIFO size (peripheral mode)" ] pub mod otg_hs_tx0fsiz_peripheral { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsTx0fsizPeripheral { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Tx0fsaR { bits : u16 , } impl Tx0fsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct Tx0fdR { bits : u16 , } impl Tx0fdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _Tx0fsaW < 'a > { w : & 'a mut W , } impl < 'a > _Tx0fsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Tx0fdW < 'a > { w : & 'a mut W , } impl < 'a > _Tx0fdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ] # [ inline ( always ) ] pub fn tx0fsa ( & self ) -> Tx0fsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Tx0fsaR { bits } } # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ] # [ inline ( always ) ] pub fn tx0fd ( & self ) -> Tx0fdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; Tx0fdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 512 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ] # [ inline ( always ) ] pub fn tx0fsa ( & mut self ) -> _Tx0fsaW { _Tx0fsaW { w : self } } # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ] # [ inline ( always ) ] pub fn tx0fd ( & mut self ) -> _Tx0fdW { _Tx0fdW { w : self } } } } # [ doc = "OTG_HS nonperiodic transmit FIFO/queue status register" ] pub struct OtgHsGnptxsts { register : VolatileCell < u32 > } # [ doc = "OTG_HS nonperiodic transmit FIFO/queue status register" ] pub mod otg_hs_gnptxsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsGnptxsts { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct NptxfsavR { bits : u16 , } impl NptxfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptqxsavR { bits : u8 , } impl NptqxsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NptxqtopR { bits : u8 , } impl NptxqtopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Nonperiodic TxFIFO space available" ] # [ inline ( always ) ] pub fn nptxfsav ( & self ) -> NptxfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; NptxfsavR { bits } } # [ doc = "Bits 16:23 - Nonperiodic transmit request queue space available" ] # [ inline ( always ) ] pub fn nptqxsav ( & self ) -> NptqxsavR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptqxsavR { bits } } # [ doc = "Bits 24:30 - Top of the nonperiodic transmit request queue" ] # [ inline ( always ) ] pub fn nptxqtop ( & self ) -> NptxqtopR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NptxqtopR { bits } } } } # [ doc = "OTG_HS general core configuration register" ] pub struct OtgHsGccfg { register : VolatileCell < u32 > } # [ doc = "OTG_HS general core configuration register" ] pub mod otg_hs_gccfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsGccfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PwrdwnR { bits : u8 , } impl PwrdwnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct I2cpadenR { bits : u8 , } impl I2cpadenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VbusasenR { bits : u8 , } impl VbusasenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct VbusbsenR { bits : u8 , } impl VbusbsenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SofoutenR { bits : u8 , } impl SofoutenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NovbussensR { bits : u8 , } impl NovbussensR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PwrdwnW < 'a > { w : & 'a mut W , } impl < 'a > _PwrdwnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _I2cpadenW < 'a > { w : & 'a mut W , } impl < 'a > _I2cpadenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VbusasenW < 'a > { w : & 'a mut W , } impl < 'a > _VbusasenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _VbusbsenW < 'a > { w : & 'a mut W , } impl < 'a > _VbusbsenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SofoutenW < 'a > { w : & 'a mut W , } impl < 'a > _SofoutenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NovbussensW < 'a > { w : & 'a mut W , } impl < 'a > _NovbussensW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 16 - Power down" ] # [ inline ( always ) ] pub fn pwrdwn ( & self ) -> PwrdwnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PwrdwnR { bits } } # [ doc = "Bit 17 - Enable I2C bus connection for the external I2C PHY interface" ] # [ inline ( always ) ] pub fn i2cpaden ( & self ) -> I2cpadenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; I2cpadenR { bits } } # [ doc = "Bit 18 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusasen ( & self ) -> VbusasenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VbusasenR { bits } } # [ doc = "Bit 19 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusbsen ( & self ) -> VbusbsenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; VbusbsenR { bits } } # [ doc = "Bit 20 - SOF output enable" ] # [ inline ( always ) ] pub fn sofouten ( & self ) -> SofoutenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SofoutenR { bits } } # [ doc = "Bit 21 - VBUS sensing disable option" ] # [ inline ( always ) ] pub fn novbussens ( & self ) -> NovbussensR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NovbussensR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 16 - Power down" ] # [ inline ( always ) ] pub fn pwrdwn ( & mut self ) -> _PwrdwnW { _PwrdwnW { w : self } } # [ doc = "Bit 17 - Enable I2C bus connection for the external I2C PHY interface" ] # [ inline ( always ) ] pub fn i2cpaden ( & mut self ) -> _I2cpadenW { _I2cpadenW { w : self } } # [ doc = "Bit 18 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusasen ( & mut self ) -> _VbusasenW { _VbusasenW { w : self } } # [ doc = "Bit 19 - Enable the VBUS sensing device" ] # [ inline ( always ) ] pub fn vbusbsen ( & mut self ) -> _VbusbsenW { _VbusbsenW { w : self } } # [ doc = "Bit 20 - SOF output enable" ] # [ inline ( always ) ] pub fn sofouten ( & mut self ) -> _SofoutenW { _SofoutenW { w : self } } # [ doc = "Bit 21 - VBUS sensing disable option" ] # [ inline ( always ) ] pub fn novbussens ( & mut self ) -> _NovbussensW { _NovbussensW { w : self } } } } # [ doc = "OTG_HS core ID register" ] pub struct OtgHsCid { register : VolatileCell < u32 > } # [ doc = "OTG_HS core ID register" ] pub mod otg_hs_cid { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsCid { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ProductIdR { bits : u32 , } impl ProductIdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ProductIdW < 'a > { w : & 'a mut W , } impl < 'a > _ProductIdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - Product ID field" ] # [ inline ( always ) ] pub fn product_id ( & self ) -> ProductIdR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ProductIdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 4608 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - Product ID field" ] # [ inline ( always ) ] pub fn product_id ( & mut self ) -> _ProductIdW { _ProductIdW { w : self } } } } # [ doc = "OTG_HS Host periodic transmit FIFO size register" ] pub struct OtgHsHptxfsiz { register : VolatileCell < u32 > } # [ doc = "OTG_HS Host periodic transmit FIFO size register" ] pub mod otg_hs_hptxfsiz { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHptxfsiz { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PtxsaR { bits : u16 , } impl PtxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxfdR { bits : u16 , } impl PtxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _PtxsaW < 'a > { w : & 'a mut W , } impl < 'a > _PtxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtxfdW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ] # [ inline ( always ) ] pub fn ptxsa ( & self ) -> PtxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxsaR { bits } } # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn ptxfd ( & self ) -> PtxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555968 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ] # [ inline ( always ) ] pub fn ptxsa ( & mut self ) -> _PtxsaW { _PtxsaW { w : self } } # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ] # [ inline ( always ) ] pub fn ptxfd ( & mut self ) -> _PtxfdW { _PtxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub struct OtgHsDieptxf7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ] pub mod otg_hs_dieptxf7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptxf7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxsaR { bits : u16 , } impl IneptxsaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct IneptxfdR { bits : u16 , } impl IneptxfdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxsaW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxsaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IneptxfdW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & self ) -> IneptxsaR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxsaR { bits } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & self ) -> IneptxfdR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 33555456 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ] # [ inline ( always ) ] pub fn ineptxsa ( & mut self ) -> _IneptxsaW { _IneptxsaW { w : self } } # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ] # [ inline ( always ) ] pub fn ineptxfd ( & mut self ) -> _IneptxfdW { _IneptxfdW { w : self } } } } # [ doc = "OTG_HS Receive status debug read register (peripheral mode mode)" ] pub struct OtgHsGrxstsrPeripheral { register : VolatileCell < u32 > } # [ doc = "OTG_HS Receive status debug read register (peripheral mode mode)" ] pub mod otg_hs_grxstsr_peripheral { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsGrxstsrPeripheral { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmnumR { bits : u8 , } impl FrmnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } # [ doc = "Bits 21:24 - Frame number" ] # [ inline ( always ) ] pub fn frmnum ( & self ) -> FrmnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmnumR { bits } } } } # [ doc = "OTG_HS status read and pop register (peripheral mode)" ] pub struct OtgHsGrxstspPeripheral { register : VolatileCell < u32 > } # [ doc = "OTG_HS status read and pop register (peripheral mode)" ] pub mod otg_hs_grxstsp_peripheral { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsGrxstspPeripheral { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BcntR { bits : u16 , } impl BcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktstsR { bits : u8 , } impl PktstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmnumR { bits : u8 , } impl FrmnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bits 4:14 - Byte count" ] # [ inline ( always ) ] pub fn bcnt ( & self ) -> BcntR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; BcntR { bits } } # [ doc = "Bits 15:16 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } # [ doc = "Bits 17:20 - Packet status" ] # [ inline ( always ) ] pub fn pktsts ( & self ) -> PktstsR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktstsR { bits } } # [ doc = "Bits 21:24 - Frame number" ] # [ inline ( always ) ] pub fn frmnum ( & self ) -> FrmnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmnumR { bits } } } } } # [ doc = "USB on the go high speed" ] pub struct OtgHsGlobal { register_block : otg_hs_global :: RegisterBlock } impl Deref for OtgHsGlobal { type Target = otg_hs_global :: RegisterBlock ; fn deref ( & self ) -> & otg_hs_global :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go high speed" ] pub const OTG_HS_HOST : Peripheral < OtgHsHost > = unsafe { Peripheral :: new ( 1074004992 ) } ; # [ doc = "USB on the go high speed" ] pub mod otg_hs_host { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_HS host configuration register" ] pub otg_hs_hcfg : OtgHsHcfg , # [ doc = "0x04 - OTG_HS Host frame interval register" ] pub otg_hs_hfir : OtgHsHfir , # [ doc = "0x08 - OTG_HS host frame number/frame time remaining register" ] pub otg_hs_hfnum : OtgHsHfnum , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x10 - OTG_HS_Host periodic transmit FIFO/queue status register" ] pub otg_hs_hptxsts : OtgHsHptxsts , # [ doc = "0x14 - OTG_HS Host all channels interrupt register" ] pub otg_hs_haint : OtgHsHaint , # [ doc = "0x18 - OTG_HS host all channels interrupt mask register" ] pub otg_hs_haintmsk : OtgHsHaintmsk , _reserved1 : [ u8 ; 36usize ] , # [ doc = "0x40 - OTG_HS host port control and status register" ] pub otg_hs_hprt : OtgHsHprt , _reserved2 : [ u8 ; 188usize ] , # [ doc = "0x100 - OTG_HS host channel-0 characteristics register" ] pub otg_hs_hcchar0 : OtgHsHcchar0 , # [ doc = "0x104 - OTG_HS host channel-0 split control register" ] pub otg_hs_hcsplt0 : OtgHsHcsplt0 , # [ doc = "0x108 - OTG_HS host channel-11 interrupt register" ] pub otg_hs_hcint0 : OtgHsHcint0 , # [ doc = "0x10c - OTG_HS host channel-11 interrupt mask register" ] pub otg_hs_hcintmsk0 : OtgHsHcintmsk0 , # [ doc = "0x110 - OTG_HS host channel-11 transfer size register" ] pub otg_hs_hctsiz0 : OtgHsHctsiz0 , # [ doc = "0x114 - OTG_HS host channel-0 DMA address register" ] pub otg_hs_hcdma0 : OtgHsHcdma0 , _reserved3 : [ u8 ; 8usize ] , # [ doc = "0x120 - OTG_HS host channel-1 characteristics register" ] pub otg_hs_hcchar1 : OtgHsHcchar1 , # [ doc = "0x124 - OTG_HS host channel-1 split control register" ] pub otg_hs_hcsplt1 : OtgHsHcsplt1 , # [ doc = "0x128 - OTG_HS host channel-1 interrupt register" ] pub otg_hs_hcint1 : OtgHsHcint1 , # [ doc = "0x12c - OTG_HS host channel-1 interrupt mask register" ] pub otg_hs_hcintmsk1 : OtgHsHcintmsk1 , # [ doc = "0x130 - OTG_HS host channel-1 transfer size register" ] pub otg_hs_hctsiz1 : OtgHsHctsiz1 , # [ doc = "0x134 - OTG_HS host channel-1 DMA address register" ] pub otg_hs_hcdma1 : OtgHsHcdma1 , _reserved4 : [ u8 ; 8usize ] , # [ doc = "0x140 - OTG_HS host channel-2 characteristics register" ] pub otg_hs_hcchar2 : OtgHsHcchar2 , # [ doc = "0x144 - OTG_HS host channel-2 split control register" ] pub otg_hs_hcsplt2 : OtgHsHcsplt2 , # [ doc = "0x148 - OTG_HS host channel-2 interrupt register" ] pub otg_hs_hcint2 : OtgHsHcint2 , # [ doc = "0x14c - OTG_HS host channel-2 interrupt mask register" ] pub otg_hs_hcintmsk2 : OtgHsHcintmsk2 , # [ doc = "0x150 - OTG_HS host channel-2 transfer size register" ] pub otg_hs_hctsiz2 : OtgHsHctsiz2 , # [ doc = "0x154 - OTG_HS host channel-2 DMA address register" ] pub otg_hs_hcdma2 : OtgHsHcdma2 , _reserved5 : [ u8 ; 8usize ] , # [ doc = "0x160 - OTG_HS host channel-3 characteristics register" ] pub otg_hs_hcchar3 : OtgHsHcchar3 , # [ doc = "0x164 - OTG_HS host channel-3 split control register" ] pub otg_hs_hcsplt3 : OtgHsHcsplt3 , # [ doc = "0x168 - OTG_HS host channel-3 interrupt register" ] pub otg_hs_hcint3 : OtgHsHcint3 , # [ doc = "0x16c - OTG_HS host channel-3 interrupt mask register" ] pub otg_hs_hcintmsk3 : OtgHsHcintmsk3 , # [ doc = "0x170 - OTG_HS host channel-3 transfer size register" ] pub otg_hs_hctsiz3 : OtgHsHctsiz3 , # [ doc = "0x174 - OTG_HS host channel-3 DMA address register" ] pub otg_hs_hcdma3 : OtgHsHcdma3 , _reserved6 : [ u8 ; 8usize ] , # [ doc = "0x180 - OTG_HS host channel-4 characteristics register" ] pub otg_hs_hcchar4 : OtgHsHcchar4 , # [ doc = "0x184 - OTG_HS host channel-4 split control register" ] pub otg_hs_hcsplt4 : OtgHsHcsplt4 , # [ doc = "0x188 - OTG_HS host channel-4 interrupt register" ] pub otg_hs_hcint4 : OtgHsHcint4 , # [ doc = "0x18c - OTG_HS host channel-4 interrupt mask register" ] pub otg_hs_hcintmsk4 : OtgHsHcintmsk4 , # [ doc = "0x190 - OTG_HS host channel-4 transfer size register" ] pub otg_hs_hctsiz4 : OtgHsHctsiz4 , # [ doc = "0x194 - OTG_HS host channel-4 DMA address register" ] pub otg_hs_hcdma4 : OtgHsHcdma4 , _reserved7 : [ u8 ; 8usize ] , # [ doc = "0x1a0 - OTG_HS host channel-5 characteristics register" ] pub otg_hs_hcchar5 : OtgHsHcchar5 , # [ doc = "0x1a4 - OTG_HS host channel-5 split control register" ] pub otg_hs_hcsplt5 : OtgHsHcsplt5 , # [ doc = "0x1a8 - OTG_HS host channel-5 interrupt register" ] pub otg_hs_hcint5 : OtgHsHcint5 , # [ doc = "0x1ac - OTG_HS host channel-5 interrupt mask register" ] pub otg_hs_hcintmsk5 : OtgHsHcintmsk5 , # [ doc = "0x1b0 - OTG_HS host channel-5 transfer size register" ] pub otg_hs_hctsiz5 : OtgHsHctsiz5 , # [ doc = "0x1b4 - OTG_HS host channel-5 DMA address register" ] pub otg_hs_hcdma5 : OtgHsHcdma5 , _reserved8 : [ u8 ; 8usize ] , # [ doc = "0x1c0 - OTG_HS host channel-6 characteristics register" ] pub otg_hs_hcchar6 : OtgHsHcchar6 , # [ doc = "0x1c4 - OTG_HS host channel-6 split control register" ] pub otg_hs_hcsplt6 : OtgHsHcsplt6 , # [ doc = "0x1c8 - OTG_HS host channel-6 interrupt register" ] pub otg_hs_hcint6 : OtgHsHcint6 , # [ doc = "0x1cc - OTG_HS host channel-6 interrupt mask register" ] pub otg_hs_hcintmsk6 : OtgHsHcintmsk6 , # [ doc = "0x1d0 - OTG_HS host channel-6 transfer size register" ] pub otg_hs_hctsiz6 : OtgHsHctsiz6 , # [ doc = "0x1d4 - OTG_HS host channel-6 DMA address register" ] pub otg_hs_hcdma6 : OtgHsHcdma6 , _reserved9 : [ u8 ; 8usize ] , # [ doc = "0x1e0 - OTG_HS host channel-7 characteristics register" ] pub otg_hs_hcchar7 : OtgHsHcchar7 , # [ doc = "0x1e4 - OTG_HS host channel-7 split control register" ] pub otg_hs_hcsplt7 : OtgHsHcsplt7 , # [ doc = "0x1e8 - OTG_HS host channel-7 interrupt register" ] pub otg_hs_hcint7 : OtgHsHcint7 , # [ doc = "0x1ec - OTG_HS host channel-7 interrupt mask register" ] pub otg_hs_hcintmsk7 : OtgHsHcintmsk7 , # [ doc = "0x1f0 - OTG_HS host channel-7 transfer size register" ] pub otg_hs_hctsiz7 : OtgHsHctsiz7 , # [ doc = "0x1f4 - OTG_HS host channel-7 DMA address register" ] pub otg_hs_hcdma7 : OtgHsHcdma7 , _reserved10 : [ u8 ; 8usize ] , # [ doc = "0x200 - OTG_HS host channel-8 characteristics register" ] pub otg_hs_hcchar8 : OtgHsHcchar8 , # [ doc = "0x204 - OTG_HS host channel-8 split control register" ] pub otg_hs_hcsplt8 : OtgHsHcsplt8 , # [ doc = "0x208 - OTG_HS host channel-8 interrupt register" ] pub otg_hs_hcint8 : OtgHsHcint8 , # [ doc = "0x20c - OTG_HS host channel-8 interrupt mask register" ] pub otg_hs_hcintmsk8 : OtgHsHcintmsk8 , # [ doc = "0x210 - OTG_HS host channel-8 transfer size register" ] pub otg_hs_hctsiz8 : OtgHsHctsiz8 , # [ doc = "0x214 - OTG_HS host channel-8 DMA address register" ] pub otg_hs_hcdma8 : OtgHsHcdma8 , _reserved11 : [ u8 ; 8usize ] , # [ doc = "0x220 - OTG_HS host channel-9 characteristics register" ] pub otg_hs_hcchar9 : OtgHsHcchar9 , # [ doc = "0x224 - OTG_HS host channel-9 split control register" ] pub otg_hs_hcsplt9 : OtgHsHcsplt9 , # [ doc = "0x228 - OTG_HS host channel-9 interrupt register" ] pub otg_hs_hcint9 : OtgHsHcint9 , # [ doc = "0x22c - OTG_HS host channel-9 interrupt mask register" ] pub otg_hs_hcintmsk9 : OtgHsHcintmsk9 , # [ doc = "0x230 - OTG_HS host channel-9 transfer size register" ] pub otg_hs_hctsiz9 : OtgHsHctsiz9 , # [ doc = "0x234 - OTG_HS host channel-9 DMA address register" ] pub otg_hs_hcdma9 : OtgHsHcdma9 , _reserved12 : [ u8 ; 8usize ] , # [ doc = "0x240 - OTG_HS host channel-10 characteristics register" ] pub otg_hs_hcchar10 : OtgHsHcchar10 , # [ doc = "0x244 - OTG_HS host channel-10 split control register" ] pub otg_hs_hcsplt10 : OtgHsHcsplt10 , # [ doc = "0x248 - OTG_HS host channel-10 interrupt register" ] pub otg_hs_hcint10 : OtgHsHcint10 , # [ doc = "0x24c - OTG_HS host channel-10 interrupt mask register" ] pub otg_hs_hcintmsk10 : OtgHsHcintmsk10 , # [ doc = "0x250 - OTG_HS host channel-10 transfer size register" ] pub otg_hs_hctsiz10 : OtgHsHctsiz10 , # [ doc = "0x254 - OTG_HS host channel-10 DMA address register" ] pub otg_hs_hcdma10 : OtgHsHcdma10 , _reserved13 : [ u8 ; 8usize ] , # [ doc = "0x260 - OTG_HS host channel-11 characteristics register" ] pub otg_hs_hcchar11 : OtgHsHcchar11 , # [ doc = "0x264 - OTG_HS host channel-11 split control register" ] pub otg_hs_hcsplt11 : OtgHsHcsplt11 , # [ doc = "0x268 - OTG_HS host channel-11 interrupt register" ] pub otg_hs_hcint11 : OtgHsHcint11 , # [ doc = "0x26c - OTG_HS host channel-11 interrupt mask register" ] pub otg_hs_hcintmsk11 : OtgHsHcintmsk11 , # [ doc = "0x270 - OTG_HS host channel-11 transfer size register" ] pub otg_hs_hctsiz11 : OtgHsHctsiz11 , # [ doc = "0x274 - OTG_HS host channel-11 DMA address register" ] pub otg_hs_hcdma11 : OtgHsHcdma11 , } # [ doc = "OTG_HS host configuration register" ] pub struct OtgHsHcfg { register : VolatileCell < u32 > } # [ doc = "OTG_HS host configuration register" ] pub mod otg_hs_hcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FslspcsR { bits : u8 , } impl FslspcsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FslssR { bits : u8 , } impl FslssR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _FslspcsW < 'a > { w : & 'a mut W , } impl < 'a > _FslspcsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - FS/LS PHY clock select" ] # [ inline ( always ) ] pub fn fslspcs ( & self ) -> FslspcsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FslspcsR { bits } } # [ doc = "Bit 2 - FS- and LS-only support" ] # [ inline ( always ) ] pub fn fslss ( & self ) -> FslssR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FslssR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - FS/LS PHY clock select" ] # [ inline ( always ) ] pub fn fslspcs ( & mut self ) -> _FslspcsW { _FslspcsW { w : self } } } } # [ doc = "OTG_HS Host frame interval register" ] pub struct OtgHsHfir { register : VolatileCell < u32 > } # [ doc = "OTG_HS Host frame interval register" ] pub mod otg_hs_hfir { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHfir { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct FrivlR { bits : u16 , } impl FrivlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _FrivlW < 'a > { w : & 'a mut W , } impl < 'a > _FrivlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Frame interval" ] # [ inline ( always ) ] pub fn frivl ( & self ) -> FrivlR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FrivlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 60000 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Frame interval" ] # [ inline ( always ) ] pub fn frivl ( & mut self ) -> _FrivlW { _FrivlW { w : self } } } } # [ doc = "OTG_HS host frame number/frame time remaining register" ] pub struct OtgHsHfnum { register : VolatileCell < u32 > } # [ doc = "OTG_HS host frame number/frame time remaining register" ] pub mod otg_hs_hfnum { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsHfnum { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct FrnumR { bits : u16 , } impl FrnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct FtremR { bits : u16 , } impl FtremR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Frame number" ] # [ inline ( always ) ] pub fn frnum ( & self ) -> FrnumR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FrnumR { bits } } # [ doc = "Bits 16:31 - Frame time remaining" ] # [ inline ( always ) ] pub fn ftrem ( & self ) -> FtremR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FtremR { bits } } } } # [ doc = "OTG_HS_Host periodic transmit FIFO/queue status register" ] pub struct OtgHsHptxsts { register : VolatileCell < u32 > } # [ doc = "OTG_HS_Host periodic transmit FIFO/queue status register" ] pub mod otg_hs_hptxsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHptxsts { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PtxfsavlR { bits : u16 , } impl PtxfsavlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxqsavR { bits : u8 , } impl PtxqsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtxqtopR { bits : u8 , } impl PtxqtopR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PtxfsavlW < 'a > { w : & 'a mut W , } impl < 'a > _PtxfsavlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ] # [ inline ( always ) ] pub fn ptxfsavl ( & self ) -> PtxfsavlR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PtxfsavlR { bits } } # [ doc = "Bits 16:23 - Periodic transmit request queue space available" ] # [ inline ( always ) ] pub fn ptxqsav ( & self ) -> PtxqsavR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxqsavR { bits } } # [ doc = "Bits 24:31 - Top of the periodic transmit request queue" ] # [ inline ( always ) ] pub fn ptxqtop ( & self ) -> PtxqtopR { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtxqtopR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 524544 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ] # [ inline ( always ) ] pub fn ptxfsavl ( & mut self ) -> _PtxfsavlW { _PtxfsavlW { w : self } } } } # [ doc = "OTG_HS Host all channels interrupt register" ] pub struct OtgHsHaint { register : VolatileCell < u32 > } # [ doc = "OTG_HS Host all channels interrupt register" ] pub mod otg_hs_haint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsHaint { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct HaintR { bits : u16 , } impl HaintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Channel interrupts" ] # [ inline ( always ) ] pub fn haint ( & self ) -> HaintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HaintR { bits } } } } # [ doc = "OTG_HS host all channels interrupt mask register" ] pub struct OtgHsHaintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS host all channels interrupt mask register" ] pub mod otg_hs_haintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHaintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct HaintmR { bits : u16 , } impl HaintmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _HaintmW < 'a > { w : & 'a mut W , } impl < 'a > _HaintmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Channel interrupt mask" ] # [ inline ( always ) ] pub fn haintm ( & self ) -> HaintmR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; HaintmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Channel interrupt mask" ] # [ inline ( always ) ] pub fn haintm ( & mut self ) -> _HaintmW { _HaintmW { w : self } } } } # [ doc = "OTG_HS host port control and status register" ] pub struct OtgHsHprt { register : VolatileCell < u32 > } # [ doc = "OTG_HS host port control and status register" ] pub mod otg_hs_hprt { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHprt { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PcstsR { bits : u8 , } impl PcstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PcdetR { bits : u8 , } impl PcdetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PenaR { bits : u8 , } impl PenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PenchngR { bits : u8 , } impl PenchngR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PocaR { bits : u8 , } impl PocaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PocchngR { bits : u8 , } impl PocchngR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PresR { bits : u8 , } impl PresR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PsuspR { bits : u8 , } impl PsuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PrstR { bits : u8 , } impl PrstR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PlstsR { bits : u8 , } impl PlstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PpwrR { bits : u8 , } impl PpwrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PtctlR { bits : u8 , } impl PtctlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PspdR { bits : u8 , } impl PspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PcdetW < 'a > { w : & 'a mut W , } impl < 'a > _PcdetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PenaW < 'a > { w : & 'a mut W , } impl < 'a > _PenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PenchngW < 'a > { w : & 'a mut W , } impl < 'a > _PenchngW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PocchngW < 'a > { w : & 'a mut W , } impl < 'a > _PocchngW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PresW < 'a > { w : & 'a mut W , } impl < 'a > _PresW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PsuspW < 'a > { w : & 'a mut W , } impl < 'a > _PsuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PrstW < 'a > { w : & 'a mut W , } impl < 'a > _PrstW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PpwrW < 'a > { w : & 'a mut W , } impl < 'a > _PpwrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PtctlW < 'a > { w : & 'a mut W , } impl < 'a > _PtctlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Port connect status" ] # [ inline ( always ) ] pub fn pcsts ( & self ) -> PcstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcstsR { bits } } # [ doc = "Bit 1 - Port connect detected" ] # [ inline ( always ) ] pub fn pcdet ( & self ) -> PcdetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PcdetR { bits } } # [ doc = "Bit 2 - Port enable" ] # [ inline ( always ) ] pub fn pena ( & self ) -> PenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PenaR { bits } } # [ doc = "Bit 3 - Port enable/disable change" ] # [ inline ( always ) ] pub fn penchng ( & self ) -> PenchngR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PenchngR { bits } } # [ doc = "Bit 4 - Port overcurrent active" ] # [ inline ( always ) ] pub fn poca ( & self ) -> PocaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PocaR { bits } } # [ doc = "Bit 5 - Port overcurrent change" ] # [ inline ( always ) ] pub fn pocchng ( & self ) -> PocchngR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PocchngR { bits } } # [ doc = "Bit 6 - Port resume" ] # [ inline ( always ) ] pub fn pres ( & self ) -> PresR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PresR { bits } } # [ doc = "Bit 7 - Port suspend" ] # [ inline ( always ) ] pub fn psusp ( & self ) -> PsuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PsuspR { bits } } # [ doc = "Bit 8 - Port reset" ] # [ inline ( always ) ] pub fn prst ( & self ) -> PrstR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrstR { bits } } # [ doc = "Bits 10:11 - Port line status" ] # [ inline ( always ) ] pub fn plsts ( & self ) -> PlstsR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PlstsR { bits } } # [ doc = "Bit 12 - Port power" ] # [ inline ( always ) ] pub fn ppwr ( & self ) -> PpwrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PpwrR { bits } } # [ doc = "Bits 13:16 - Port test control" ] # [ inline ( always ) ] pub fn ptctl ( & self ) -> PtctlR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PtctlR { bits } } # [ doc = "Bits 17:18 - Port speed" ] # [ inline ( always ) ] pub fn pspd ( & self ) -> PspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PspdR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - Port connect detected" ] # [ inline ( always ) ] pub fn pcdet ( & mut self ) -> _PcdetW { _PcdetW { w : self } } # [ doc = "Bit 2 - Port enable" ] # [ inline ( always ) ] pub fn pena ( & mut self ) -> _PenaW { _PenaW { w : self } } # [ doc = "Bit 3 - Port enable/disable change" ] # [ inline ( always ) ] pub fn penchng ( & mut self ) -> _PenchngW { _PenchngW { w : self } } # [ doc = "Bit 5 - Port overcurrent change" ] # [ inline ( always ) ] pub fn pocchng ( & mut self ) -> _PocchngW { _PocchngW { w : self } } # [ doc = "Bit 6 - Port resume" ] # [ inline ( always ) ] pub fn pres ( & mut self ) -> _PresW { _PresW { w : self } } # [ doc = "Bit 7 - Port suspend" ] # [ inline ( always ) ] pub fn psusp ( & mut self ) -> _PsuspW { _PsuspW { w : self } } # [ doc = "Bit 8 - Port reset" ] # [ inline ( always ) ] pub fn prst ( & mut self ) -> _PrstW { _PrstW { w : self } } # [ doc = "Bit 12 - Port power" ] # [ inline ( always ) ] pub fn ppwr ( & mut self ) -> _PpwrW { _PpwrW { w : self } } # [ doc = "Bits 13:16 - Port test control" ] # [ inline ( always ) ] pub fn ptctl ( & mut self ) -> _PtctlW { _PtctlW { w : self } } } } # [ doc = "OTG_HS host channel-0 characteristics register" ] pub struct OtgHsHcchar0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-0 characteristics register" ] pub mod otg_hs_hcchar0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-1 characteristics register" ] pub struct OtgHsHcchar1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 characteristics register" ] pub mod otg_hs_hcchar1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-2 characteristics register" ] pub struct OtgHsHcchar2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 characteristics register" ] pub mod otg_hs_hcchar2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-3 characteristics register" ] pub struct OtgHsHcchar3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 characteristics register" ] pub mod otg_hs_hcchar3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-4 characteristics register" ] pub struct OtgHsHcchar4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 characteristics register" ] pub mod otg_hs_hcchar4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-5 characteristics register" ] pub struct OtgHsHcchar5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 characteristics register" ] pub mod otg_hs_hcchar5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-6 characteristics register" ] pub struct OtgHsHcchar6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 characteristics register" ] pub mod otg_hs_hcchar6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-7 characteristics register" ] pub struct OtgHsHcchar7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 characteristics register" ] pub mod otg_hs_hcchar7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-8 characteristics register" ] pub struct OtgHsHcchar8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 characteristics register" ] pub mod otg_hs_hcchar8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-9 characteristics register" ] pub struct OtgHsHcchar9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 characteristics register" ] pub mod otg_hs_hcchar9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-10 characteristics register" ] pub struct OtgHsHcchar10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 characteristics register" ] pub mod otg_hs_hcchar10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-11 characteristics register" ] pub struct OtgHsHcchar11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 characteristics register" ] pub mod otg_hs_hcchar11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcchar11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpnumR { bits : u8 , } impl EpnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdirR { bits : u8 , } impl EpdirR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct LsdevR { bits : u8 , } impl LsdevR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct McR { bits : u8 , } impl McR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OddfrmR { bits : u8 , } impl OddfrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChdisR { bits : u8 , } impl ChdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChenaR { bits : u8 , } impl ChenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpnumW < 'a > { w : & 'a mut W , } impl < 'a > _EpnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdirW < 'a > { w : & 'a mut W , } impl < 'a > _EpdirW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _LsdevW < 'a > { w : & 'a mut W , } impl < 'a > _LsdevW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McW < 'a > { w : & 'a mut W , } impl < 'a > _McW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _OddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChdisW < 'a > { w : & 'a mut W , } impl < 'a > _ChdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChenaW < 'a > { w : & 'a mut W , } impl < 'a > _ChenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & self ) -> EpnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpnumR { bits } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & self ) -> EpdirR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdirR { bits } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & self ) -> LsdevR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; LsdevR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & self ) -> McR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McR { bits } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & self ) -> OddfrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OddfrmR { bits } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & self ) -> ChdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChdisR { bits } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & self ) -> ChenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bits 11:14 - Endpoint number" ] # [ inline ( always ) ] pub fn epnum ( & mut self ) -> _EpnumW { _EpnumW { w : self } } # [ doc = "Bit 15 - Endpoint direction" ] # [ inline ( always ) ] pub fn epdir ( & mut self ) -> _EpdirW { _EpdirW { w : self } } # [ doc = "Bit 17 - Low-speed device" ] # [ inline ( always ) ] pub fn lsdev ( & mut self ) -> _LsdevW { _LsdevW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ] # [ inline ( always ) ] pub fn mc ( & mut self ) -> _McW { _McW { w : self } } # [ doc = "Bits 22:28 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bit 29 - Odd frame" ] # [ inline ( always ) ] pub fn oddfrm ( & mut self ) -> _OddfrmW { _OddfrmW { w : self } } # [ doc = "Bit 30 - Channel disable" ] # [ inline ( always ) ] pub fn chdis ( & mut self ) -> _ChdisW { _ChdisW { w : self } } # [ doc = "Bit 31 - Channel enable" ] # [ inline ( always ) ] pub fn chena ( & mut self ) -> _ChenaW { _ChenaW { w : self } } } } # [ doc = "OTG_HS host channel-0 split control register" ] pub struct OtgHsHcsplt0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-0 split control register" ] pub mod otg_hs_hcsplt0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-1 split control register" ] pub struct OtgHsHcsplt1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 split control register" ] pub mod otg_hs_hcsplt1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-2 split control register" ] pub struct OtgHsHcsplt2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 split control register" ] pub mod otg_hs_hcsplt2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-3 split control register" ] pub struct OtgHsHcsplt3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 split control register" ] pub mod otg_hs_hcsplt3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-4 split control register" ] pub struct OtgHsHcsplt4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 split control register" ] pub mod otg_hs_hcsplt4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-5 split control register" ] pub struct OtgHsHcsplt5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 split control register" ] pub mod otg_hs_hcsplt5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-6 split control register" ] pub struct OtgHsHcsplt6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 split control register" ] pub mod otg_hs_hcsplt6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-7 split control register" ] pub struct OtgHsHcsplt7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 split control register" ] pub mod otg_hs_hcsplt7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-8 split control register" ] pub struct OtgHsHcsplt8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 split control register" ] pub mod otg_hs_hcsplt8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-9 split control register" ] pub struct OtgHsHcsplt9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 split control register" ] pub mod otg_hs_hcsplt9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-10 split control register" ] pub struct OtgHsHcsplt10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 split control register" ] pub mod otg_hs_hcsplt10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-11 split control register" ] pub struct OtgHsHcsplt11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 split control register" ] pub mod otg_hs_hcsplt11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcsplt11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct PrtaddrR { bits : u8 , } impl PrtaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct HubaddrR { bits : u8 , } impl HubaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct XactposR { bits : u8 , } impl XactposR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ComplspltR { bits : u8 , } impl ComplspltR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SplitenR { bits : u8 , } impl SplitenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _PrtaddrW < 'a > { w : & 'a mut W , } impl < 'a > _PrtaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _HubaddrW < 'a > { w : & 'a mut W , } impl < 'a > _HubaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _XactposW < 'a > { w : & 'a mut W , } impl < 'a > _XactposW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ComplspltW < 'a > { w : & 'a mut W , } impl < 'a > _ComplspltW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SplitenW < 'a > { w : & 'a mut W , } impl < 'a > _SplitenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & self ) -> PrtaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PrtaddrR { bits } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & self ) -> HubaddrR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; HubaddrR { bits } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & self ) -> XactposR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XactposR { bits } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & self ) -> ComplspltR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ComplspltR { bits } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & self ) -> SplitenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SplitenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Port address" ] # [ inline ( always ) ] pub fn prtaddr ( & mut self ) -> _PrtaddrW { _PrtaddrW { w : self } } # [ doc = "Bits 7:13 - Hub address" ] # [ inline ( always ) ] pub fn hubaddr ( & mut self ) -> _HubaddrW { _HubaddrW { w : self } } # [ doc = "Bits 14:15 - XACTPOS" ] # [ inline ( always ) ] pub fn xactpos ( & mut self ) -> _XactposW { _XactposW { w : self } } # [ doc = "Bit 16 - Do complete split" ] # [ inline ( always ) ] pub fn complsplt ( & mut self ) -> _ComplspltW { _ComplspltW { w : self } } # [ doc = "Bit 31 - Split enable" ] # [ inline ( always ) ] pub fn spliten ( & mut self ) -> _SplitenW { _SplitenW { w : self } } } } # [ doc = "OTG_HS host channel-11 interrupt register" ] pub struct OtgHsHcint0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 interrupt register" ] pub mod otg_hs_hcint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-1 interrupt register" ] pub struct OtgHsHcint1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 interrupt register" ] pub mod otg_hs_hcint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-2 interrupt register" ] pub struct OtgHsHcint2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 interrupt register" ] pub mod otg_hs_hcint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-3 interrupt register" ] pub struct OtgHsHcint3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 interrupt register" ] pub mod otg_hs_hcint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-4 interrupt register" ] pub struct OtgHsHcint4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 interrupt register" ] pub mod otg_hs_hcint4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-5 interrupt register" ] pub struct OtgHsHcint5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 interrupt register" ] pub mod otg_hs_hcint5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-6 interrupt register" ] pub struct OtgHsHcint6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 interrupt register" ] pub mod otg_hs_hcint6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-7 interrupt register" ] pub struct OtgHsHcint7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 interrupt register" ] pub mod otg_hs_hcint7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-8 interrupt register" ] pub struct OtgHsHcint8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 interrupt register" ] pub mod otg_hs_hcint8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-9 interrupt register" ] pub struct OtgHsHcint9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 interrupt register" ] pub mod otg_hs_hcint9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-10 interrupt register" ] pub struct OtgHsHcint10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 interrupt register" ] pub mod otg_hs_hcint10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-11 interrupt register" ] pub struct OtgHsHcint11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 interrupt register" ] pub mod otg_hs_hcint11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcint11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhR { bits : u8 , } impl ChhR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckR { bits : u8 , } impl AckR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrR { bits : u8 , } impl TxerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrR { bits : u8 , } impl BberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmorR { bits : u8 , } impl FrmorR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrR { bits : u8 , } impl DterrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhW < 'a > { w : & 'a mut W , } impl < 'a > _ChhW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckW < 'a > { w : & 'a mut W , } impl < 'a > _AckW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrW < 'a > { w : & 'a mut W , } impl < 'a > _BberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmorW < 'a > { w : & 'a mut W , } impl < 'a > _FrmorW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrW < 'a > { w : & 'a mut W , } impl < 'a > _DterrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & self ) -> ChhR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & self ) -> AckR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckR { bits } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & self ) -> TxerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrR { bits } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & self ) -> BberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrR { bits } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & self ) -> FrmorR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmorR { bits } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & self ) -> DterrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Channel halted" ] # [ inline ( always ) ] pub fn chh ( & mut self ) -> _ChhW { _ChhW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ] # [ inline ( always ) ] pub fn ack ( & mut self ) -> _AckW { _AckW { w : self } } # [ doc = "Bit 6 - Response received interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error" ] # [ inline ( always ) ] pub fn txerr ( & mut self ) -> _TxerrW { _TxerrW { w : self } } # [ doc = "Bit 8 - Babble error" ] # [ inline ( always ) ] pub fn bberr ( & mut self ) -> _BberrW { _BberrW { w : self } } # [ doc = "Bit 9 - Frame overrun" ] # [ inline ( always ) ] pub fn frmor ( & mut self ) -> _FrmorW { _FrmorW { w : self } } # [ doc = "Bit 10 - Data toggle error" ] # [ inline ( always ) ] pub fn dterr ( & mut self ) -> _DterrW { _DterrW { w : self } } } } # [ doc = "OTG_HS host channel-11 interrupt mask register" ] pub struct OtgHsHcintmsk0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 interrupt mask register" ] pub mod otg_hs_hcintmsk0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-1 interrupt mask register" ] pub struct OtgHsHcintmsk1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 interrupt mask register" ] pub mod otg_hs_hcintmsk1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-2 interrupt mask register" ] pub struct OtgHsHcintmsk2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 interrupt mask register" ] pub mod otg_hs_hcintmsk2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-3 interrupt mask register" ] pub struct OtgHsHcintmsk3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 interrupt mask register" ] pub mod otg_hs_hcintmsk3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-4 interrupt mask register" ] pub struct OtgHsHcintmsk4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 interrupt mask register" ] pub mod otg_hs_hcintmsk4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-5 interrupt mask register" ] pub struct OtgHsHcintmsk5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 interrupt mask register" ] pub mod otg_hs_hcintmsk5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-6 interrupt mask register" ] pub struct OtgHsHcintmsk6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 interrupt mask register" ] pub mod otg_hs_hcintmsk6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-7 interrupt mask register" ] pub struct OtgHsHcintmsk7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 interrupt mask register" ] pub mod otg_hs_hcintmsk7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-8 interrupt mask register" ] pub struct OtgHsHcintmsk8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 interrupt mask register" ] pub mod otg_hs_hcintmsk8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-9 interrupt mask register" ] pub struct OtgHsHcintmsk9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 interrupt mask register" ] pub mod otg_hs_hcintmsk9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-10 interrupt mask register" ] pub struct OtgHsHcintmsk10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 interrupt mask register" ] pub mod otg_hs_hcintmsk10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-11 interrupt mask register" ] pub struct OtgHsHcintmsk11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 interrupt mask register" ] pub mod otg_hs_hcintmsk11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcintmsk11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct ChhmR { bits : u8 , } impl ChhmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AhberrR { bits : u8 , } impl AhberrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallmR { bits : u8 , } impl StallmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct AckmR { bits : u8 , } impl AckmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxerrmR { bits : u8 , } impl TxerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BberrmR { bits : u8 , } impl BberrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FrmormR { bits : u8 , } impl FrmormR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DterrmR { bits : u8 , } impl DterrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ChhmW < 'a > { w : & 'a mut W , } impl < 'a > _ChhmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AhberrW < 'a > { w : & 'a mut W , } impl < 'a > _AhberrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallmW < 'a > { w : & 'a mut W , } impl < 'a > _StallmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _AckmW < 'a > { w : & 'a mut W , } impl < 'a > _AckmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxerrmW < 'a > { w : & 'a mut W , } impl < 'a > _TxerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BberrmW < 'a > { w : & 'a mut W , } impl < 'a > _BberrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _FrmormW < 'a > { w : & 'a mut W , } impl < 'a > _FrmormW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DterrmW < 'a > { w : & 'a mut W , } impl < 'a > _DterrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & self ) -> ChhmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ChhmR { bits } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & self ) -> AhberrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AhberrR { bits } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & self ) -> StallmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallmR { bits } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & self ) -> AckmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; AckmR { bits } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & self ) -> TxerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxerrmR { bits } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & self ) -> BberrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BberrmR { bits } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & self ) -> FrmormR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; FrmormR { bits } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & self ) -> DterrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DterrmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Channel halted mask" ] # [ inline ( always ) ] pub fn chhm ( & mut self ) -> _ChhmW { _ChhmW { w : self } } # [ doc = "Bit 2 - AHB error" ] # [ inline ( always ) ] pub fn ahberr ( & mut self ) -> _AhberrW { _AhberrW { w : self } } # [ doc = "Bit 3 - STALL response received interrupt mask" ] # [ inline ( always ) ] pub fn stallm ( & mut self ) -> _StallmW { _StallmW { w : self } } # [ doc = "Bit 4 - NAK response received interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ] # [ inline ( always ) ] pub fn ackm ( & mut self ) -> _AckmW { _AckmW { w : self } } # [ doc = "Bit 6 - response received interrupt mask" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } # [ doc = "Bit 7 - Transaction error mask" ] # [ inline ( always ) ] pub fn txerrm ( & mut self ) -> _TxerrmW { _TxerrmW { w : self } } # [ doc = "Bit 8 - Babble error mask" ] # [ inline ( always ) ] pub fn bberrm ( & mut self ) -> _BberrmW { _BberrmW { w : self } } # [ doc = "Bit 9 - Frame overrun mask" ] # [ inline ( always ) ] pub fn frmorm ( & mut self ) -> _FrmormW { _FrmormW { w : self } } # [ doc = "Bit 10 - Data toggle error mask" ] # [ inline ( always ) ] pub fn dterrm ( & mut self ) -> _DterrmW { _DterrmW { w : self } } } } # [ doc = "OTG_HS host channel-11 transfer size register" ] pub struct OtgHsHctsiz0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 transfer size register" ] pub mod otg_hs_hctsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-1 transfer size register" ] pub struct OtgHsHctsiz1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 transfer size register" ] pub mod otg_hs_hctsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-2 transfer size register" ] pub struct OtgHsHctsiz2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 transfer size register" ] pub mod otg_hs_hctsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-3 transfer size register" ] pub struct OtgHsHctsiz3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 transfer size register" ] pub mod otg_hs_hctsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-4 transfer size register" ] pub struct OtgHsHctsiz4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 transfer size register" ] pub mod otg_hs_hctsiz4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-5 transfer size register" ] pub struct OtgHsHctsiz5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 transfer size register" ] pub mod otg_hs_hctsiz5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-6 transfer size register" ] pub struct OtgHsHctsiz6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 transfer size register" ] pub mod otg_hs_hctsiz6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-7 transfer size register" ] pub struct OtgHsHctsiz7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 transfer size register" ] pub mod otg_hs_hctsiz7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-8 transfer size register" ] pub struct OtgHsHctsiz8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 transfer size register" ] pub mod otg_hs_hctsiz8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-9 transfer size register" ] pub struct OtgHsHctsiz9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 transfer size register" ] pub mod otg_hs_hctsiz9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-10 transfer size register" ] pub struct OtgHsHctsiz10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 transfer size register" ] pub mod otg_hs_hctsiz10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-11 transfer size register" ] pub struct OtgHsHctsiz11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 transfer size register" ] pub mod otg_hs_hctsiz11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHctsiz11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct DpidR { bits : u8 , } impl DpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DpidW < 'a > { w : & 'a mut W , } impl < 'a > _DpidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & self ) -> DpidR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DpidR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Data PID" ] # [ inline ( always ) ] pub fn dpid ( & mut self ) -> _DpidW { _DpidW { w : self } } } } # [ doc = "OTG_HS host channel-0 DMA address register" ] pub struct OtgHsHcdma0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-0 DMA address register" ] pub mod otg_hs_hcdma0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-1 DMA address register" ] pub struct OtgHsHcdma1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-1 DMA address register" ] pub mod otg_hs_hcdma1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-2 DMA address register" ] pub struct OtgHsHcdma2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-2 DMA address register" ] pub mod otg_hs_hcdma2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-3 DMA address register" ] pub struct OtgHsHcdma3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-3 DMA address register" ] pub mod otg_hs_hcdma3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-4 DMA address register" ] pub struct OtgHsHcdma4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-4 DMA address register" ] pub mod otg_hs_hcdma4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-5 DMA address register" ] pub struct OtgHsHcdma5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-5 DMA address register" ] pub mod otg_hs_hcdma5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-6 DMA address register" ] pub struct OtgHsHcdma6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-6 DMA address register" ] pub mod otg_hs_hcdma6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-7 DMA address register" ] pub struct OtgHsHcdma7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-7 DMA address register" ] pub mod otg_hs_hcdma7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-8 DMA address register" ] pub struct OtgHsHcdma8 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-8 DMA address register" ] pub mod otg_hs_hcdma8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-9 DMA address register" ] pub struct OtgHsHcdma9 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-9 DMA address register" ] pub mod otg_hs_hcdma9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-10 DMA address register" ] pub struct OtgHsHcdma10 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-10 DMA address register" ] pub mod otg_hs_hcdma10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS host channel-11 DMA address register" ] pub struct OtgHsHcdma11 { register : VolatileCell < u32 > } # [ doc = "OTG_HS host channel-11 DMA address register" ] pub mod otg_hs_hcdma11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsHcdma11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } } # [ doc = "USB on the go high speed" ] pub struct OtgHsHost { register_block : otg_hs_host :: RegisterBlock } impl Deref for OtgHsHost { type Target = otg_hs_host :: RegisterBlock ; fn deref ( & self ) -> & otg_hs_host :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go high speed" ] pub const OTG_HS_DEVICE : Peripheral < OtgHsDevice > = unsafe { Peripheral :: new ( 1074006016 ) } ; # [ doc = "USB on the go high speed" ] pub mod otg_hs_device { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - OTG_HS device configuration register" ] pub otg_hs_dcfg : OtgHsDcfg , # [ doc = "0x04 - OTG_HS device control register" ] pub otg_hs_dctl : OtgHsDctl , # [ doc = "0x08 - OTG_HS device status register" ] pub otg_hs_dsts : OtgHsDsts , _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x10 - OTG_HS device IN endpoint common interrupt mask register" ] pub otg_hs_diepmsk : OtgHsDiepmsk , # [ doc = "0x14 - OTG_HS device OUT endpoint common interrupt mask register" ] pub otg_hs_doepmsk : OtgHsDoepmsk , # [ doc = "0x18 - OTG_HS device all endpoints interrupt register" ] pub otg_hs_daint : OtgHsDaint , # [ doc = "0x1c - OTG_HS all endpoints interrupt mask register" ] pub otg_hs_daintmsk : OtgHsDaintmsk , _reserved1 : [ u8 ; 8usize ] , # [ doc = "0x28 - OTG_HS device VBUS discharge time register" ] pub otg_hs_dvbusdis : OtgHsDvbusdis , # [ doc = "0x2c - OTG_HS device VBUS pulsing time register" ] pub otg_hs_dvbuspulse : OtgHsDvbuspulse , # [ doc = "0x30 - OTG_HS Device threshold control register" ] pub otg_hs_dthrctl : OtgHsDthrctl , # [ doc = "0x34 - OTG_HS device IN endpoint FIFO empty interrupt mask register" ] pub otg_hs_diepempmsk : OtgHsDiepempmsk , # [ doc = "0x38 - OTG_HS device each endpoint interrupt register" ] pub otg_hs_deachint : OtgHsDeachint , # [ doc = "0x3c - OTG_HS device each endpoint interrupt register mask" ] pub otg_hs_deachintmsk : OtgHsDeachintmsk , # [ doc = "0x40 - OTG_HS device each in endpoint-1 interrupt register" ] pub otg_hs_diepeachmsk1 : OtgHsDiepeachmsk1 , _reserved2 : [ u8 ; 60usize ] , # [ doc = "0x80 - OTG_HS device each OUT endpoint-1 interrupt register" ] pub otg_hs_doepeachmsk1 : OtgHsDoepeachmsk1 , _reserved3 : [ u8 ; 124usize ] , # [ doc = "0x100 - OTG device endpoint-0 control register" ] pub otg_hs_diepctl0 : OtgHsDiepctl0 , _reserved4 : [ u8 ; 4usize ] , # [ doc = "0x108 - OTG device endpoint-0 interrupt register" ] pub otg_hs_diepint0 : OtgHsDiepint0 , _reserved5 : [ u8 ; 4usize ] , # [ doc = "0x110 - OTG_HS device IN endpoint 0 transfer size register" ] pub otg_hs_dieptsiz0 : OtgHsDieptsiz0 , # [ doc = "0x114 - OTG_HS device endpoint-1 DMA address register" ] pub otg_hs_diepdma1 : OtgHsDiepdma1 , # [ doc = "0x118 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts0 : OtgHsDtxfsts0 , _reserved6 : [ u8 ; 4usize ] , # [ doc = "0x120 - OTG device endpoint-1 control register" ] pub otg_hs_diepctl1 : OtgHsDiepctl1 , _reserved7 : [ u8 ; 4usize ] , # [ doc = "0x128 - OTG device endpoint-1 interrupt register" ] pub otg_hs_diepint1 : OtgHsDiepint1 , _reserved8 : [ u8 ; 4usize ] , # [ doc = "0x130 - OTG_HS device endpoint transfer size register" ] pub otg_hs_dieptsiz1 : OtgHsDieptsiz1 , # [ doc = "0x134 - OTG_HS device endpoint-2 DMA address register" ] pub otg_hs_diepdma2 : OtgHsDiepdma2 , # [ doc = "0x138 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts1 : OtgHsDtxfsts1 , _reserved9 : [ u8 ; 4usize ] , # [ doc = "0x140 - OTG device endpoint-2 control register" ] pub otg_hs_diepctl2 : OtgHsDiepctl2 , _reserved10 : [ u8 ; 4usize ] , # [ doc = "0x148 - OTG device endpoint-2 interrupt register" ] pub otg_hs_diepint2 : OtgHsDiepint2 , _reserved11 : [ u8 ; 4usize ] , # [ doc = "0x150 - OTG_HS device endpoint transfer size register" ] pub otg_hs_dieptsiz2 : OtgHsDieptsiz2 , # [ doc = "0x154 - OTG_HS device endpoint-3 DMA address register" ] pub otg_hs_diepdma3 : OtgHsDiepdma3 , # [ doc = "0x158 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts2 : OtgHsDtxfsts2 , _reserved12 : [ u8 ; 4usize ] , # [ doc = "0x160 - OTG device endpoint-3 control register" ] pub otg_hs_diepctl3 : OtgHsDiepctl3 , _reserved13 : [ u8 ; 4usize ] , # [ doc = "0x168 - OTG device endpoint-3 interrupt register" ] pub otg_hs_diepint3 : OtgHsDiepint3 , _reserved14 : [ u8 ; 4usize ] , # [ doc = "0x170 - OTG_HS device endpoint transfer size register" ] pub otg_hs_dieptsiz3 : OtgHsDieptsiz3 , # [ doc = "0x174 - OTG_HS device endpoint-4 DMA address register" ] pub otg_hs_diepdma4 : OtgHsDiepdma4 , # [ doc = "0x178 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts3 : OtgHsDtxfsts3 , _reserved15 : [ u8 ; 4usize ] , # [ doc = "0x180 - OTG device endpoint-4 control register" ] pub otg_hs_diepctl4 : OtgHsDiepctl4 , _reserved16 : [ u8 ; 4usize ] , # [ doc = "0x188 - OTG device endpoint-4 interrupt register" ] pub otg_hs_diepint4 : OtgHsDiepint4 , _reserved17 : [ u8 ; 4usize ] , # [ doc = "0x190 - OTG_HS device endpoint transfer size register" ] pub otg_hs_dieptsiz4 : OtgHsDieptsiz4 , # [ doc = "0x194 - OTG_HS device endpoint-5 DMA address register" ] pub otg_hs_diepdma5 : OtgHsDiepdma5 , # [ doc = "0x198 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts4 : OtgHsDtxfsts4 , _reserved18 : [ u8 ; 4usize ] , # [ doc = "0x1a0 - OTG device endpoint-5 control register" ] pub otg_hs_diepctl5 : OtgHsDiepctl5 , _reserved19 : [ u8 ; 4usize ] , # [ doc = "0x1a8 - OTG device endpoint-5 interrupt register" ] pub otg_hs_diepint5 : OtgHsDiepint5 , _reserved20 : [ u8 ; 4usize ] , # [ doc = "0x1b0 - OTG_HS device endpoint transfer size register" ] pub otg_hs_dieptsiz5 : OtgHsDieptsiz5 , _reserved21 : [ u8 ; 4usize ] , # [ doc = "0x1b8 - OTG_HS device IN endpoint transmit FIFO status register" ] pub otg_hs_dtxfsts5 : OtgHsDtxfsts5 , _reserved22 : [ u8 ; 4usize ] , # [ doc = "0x1c0 - OTG device endpoint-6 control register" ] pub otg_hs_diepctl6 : OtgHsDiepctl6 , _reserved23 : [ u8 ; 4usize ] , # [ doc = "0x1c8 - OTG device endpoint-6 interrupt register" ] pub otg_hs_diepint6 : OtgHsDiepint6 , _reserved24 : [ u8 ; 20usize ] , # [ doc = "0x1e0 - OTG device endpoint-7 control register" ] pub otg_hs_diepctl7 : OtgHsDiepctl7 , _reserved25 : [ u8 ; 4usize ] , # [ doc = "0x1e8 - OTG device endpoint-7 interrupt register" ] pub otg_hs_diepint7 : OtgHsDiepint7 , _reserved26 : [ u8 ; 276usize ] , # [ doc = "0x300 - OTG_HS device control OUT endpoint 0 control register" ] pub otg_hs_doepctl0 : OtgHsDoepctl0 , _reserved27 : [ u8 ; 4usize ] , # [ doc = "0x308 - OTG_HS device endpoint-0 interrupt register" ] pub otg_hs_doepint0 : OtgHsDoepint0 , _reserved28 : [ u8 ; 4usize ] , # [ doc = "0x310 - OTG_HS device endpoint-1 transfer size register" ] pub otg_hs_doeptsiz0 : OtgHsDoeptsiz0 , _reserved29 : [ u8 ; 12usize ] , # [ doc = "0x320 - OTG device endpoint-1 control register" ] pub otg_hs_doepctl1 : OtgHsDoepctl1 , _reserved30 : [ u8 ; 4usize ] , # [ doc = "0x328 - OTG_HS device endpoint-1 interrupt register" ] pub otg_hs_doepint1 : OtgHsDoepint1 , _reserved31 : [ u8 ; 4usize ] , # [ doc = "0x330 - OTG_HS device endpoint-2 transfer size register" ] pub otg_hs_doeptsiz1 : OtgHsDoeptsiz1 , _reserved32 : [ u8 ; 12usize ] , # [ doc = "0x340 - OTG device endpoint-2 control register" ] pub otg_hs_doepctl2 : OtgHsDoepctl2 , _reserved33 : [ u8 ; 4usize ] , # [ doc = "0x348 - OTG_HS device endpoint-2 interrupt register" ] pub otg_hs_doepint2 : OtgHsDoepint2 , _reserved34 : [ u8 ; 4usize ] , # [ doc = "0x350 - OTG_HS device endpoint-3 transfer size register" ] pub otg_hs_doeptsiz2 : OtgHsDoeptsiz2 , _reserved35 : [ u8 ; 12usize ] , # [ doc = "0x360 - OTG device endpoint-3 control register" ] pub otg_hs_doepctl3 : OtgHsDoepctl3 , _reserved36 : [ u8 ; 4usize ] , # [ doc = "0x368 - OTG_HS device endpoint-3 interrupt register" ] pub otg_hs_doepint3 : OtgHsDoepint3 , _reserved37 : [ u8 ; 4usize ] , # [ doc = "0x370 - OTG_HS device endpoint-4 transfer size register" ] pub otg_hs_doeptsiz3 : OtgHsDoeptsiz3 , _reserved38 : [ u8 ; 20usize ] , # [ doc = "0x388 - OTG_HS device endpoint-4 interrupt register" ] pub otg_hs_doepint4 : OtgHsDoepint4 , _reserved39 : [ u8 ; 4usize ] , # [ doc = "0x390 - OTG_HS device endpoint-5 transfer size register" ] pub otg_hs_doeptsiz4 : OtgHsDoeptsiz4 , _reserved40 : [ u8 ; 20usize ] , # [ doc = "0x3a8 - OTG_HS device endpoint-5 interrupt register" ] pub otg_hs_doepint5 : OtgHsDoepint5 , _reserved41 : [ u8 ; 28usize ] , # [ doc = "0x3c8 - OTG_HS device endpoint-6 interrupt register" ] pub otg_hs_doepint6 : OtgHsDoepint6 , _reserved42 : [ u8 ; 28usize ] , # [ doc = "0x3e8 - OTG_HS device endpoint-7 interrupt register" ] pub otg_hs_doepint7 : OtgHsDoepint7 , } # [ doc = "OTG_HS device configuration register" ] pub struct OtgHsDcfg { register : VolatileCell < u32 > } # [ doc = "OTG_HS device configuration register" ] pub mod otg_hs_dcfg { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDcfg { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DspdR { bits : u8 , } impl DspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NzlsohskR { bits : u8 , } impl NzlsohskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct DadR { bits : u8 , } impl DadR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PfivlR { bits : u8 , } impl PfivlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PerschivlR { bits : u8 , } impl PerschivlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _DspdW < 'a > { w : & 'a mut W , } impl < 'a > _DspdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NzlsohskW < 'a > { w : & 'a mut W , } impl < 'a > _NzlsohskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _DadW < 'a > { w : & 'a mut W , } impl < 'a > _DadW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PfivlW < 'a > { w : & 'a mut W , } impl < 'a > _PfivlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PerschivlW < 'a > { w : & 'a mut W , } impl < 'a > _PerschivlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - Device speed" ] # [ inline ( always ) ] pub fn dspd ( & self ) -> DspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DspdR { bits } } # [ doc = "Bit 2 - Nonzero-length status OUT handshake" ] # [ inline ( always ) ] pub fn nzlsohsk ( & self ) -> NzlsohskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NzlsohskR { bits } } # [ doc = "Bits 4:10 - Device address" ] # [ inline ( always ) ] pub fn dad ( & self ) -> DadR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; DadR { bits } } # [ doc = "Bits 11:12 - Periodic (micro)frame interval" ] # [ inline ( always ) ] pub fn pfivl ( & self ) -> PfivlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PfivlR { bits } } # [ doc = "Bits 24:25 - Periodic scheduling interval" ] # [ inline ( always ) ] pub fn perschivl ( & self ) -> PerschivlR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PerschivlR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 35651584 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:1 - Device speed" ] # [ inline ( always ) ] pub fn dspd ( & mut self ) -> _DspdW { _DspdW { w : self } } # [ doc = "Bit 2 - Nonzero-length status OUT handshake" ] # [ inline ( always ) ] pub fn nzlsohsk ( & mut self ) -> _NzlsohskW { _NzlsohskW { w : self } } # [ doc = "Bits 4:10 - Device address" ] # [ inline ( always ) ] pub fn dad ( & mut self ) -> _DadW { _DadW { w : self } } # [ doc = "Bits 11:12 - Periodic (micro)frame interval" ] # [ inline ( always ) ] pub fn pfivl ( & mut self ) -> _PfivlW { _PfivlW { w : self } } # [ doc = "Bits 24:25 - Periodic scheduling interval" ] # [ inline ( always ) ] pub fn perschivl ( & mut self ) -> _PerschivlW { _PerschivlW { w : self } } } } # [ doc = "OTG_HS device control register" ] pub struct OtgHsDctl { register : VolatileCell < u32 > } # [ doc = "OTG_HS device control register" ] pub mod otg_hs_dctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct RwusigR { bits : u8 , } impl RwusigR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SdisR { bits : u8 , } impl SdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GinstsR { bits : u8 , } impl GinstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GonstsR { bits : u8 , } impl GonstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TctlR { bits : u8 , } impl TctlR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PoprgdneR { bits : u8 , } impl PoprgdneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _RwusigW < 'a > { w : & 'a mut W , } impl < 'a > _RwusigW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SdisW < 'a > { w : & 'a mut W , } impl < 'a > _SdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TctlW < 'a > { w : & 'a mut W , } impl < 'a > _TctlW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SginakW < 'a > { w : & 'a mut W , } impl < 'a > _SginakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CginakW < 'a > { w : & 'a mut W , } impl < 'a > _CginakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SgonakW < 'a > { w : & 'a mut W , } impl < 'a > _SgonakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CgonakW < 'a > { w : & 'a mut W , } impl < 'a > _CgonakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 10 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PoprgdneW < 'a > { w : & 'a mut W , } impl < 'a > _PoprgdneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Remote wakeup signaling" ] # [ inline ( always ) ] pub fn rwusig ( & self ) -> RwusigR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RwusigR { bits } } # [ doc = "Bit 1 - Soft disconnect" ] # [ inline ( always ) ] pub fn sdis ( & self ) -> SdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SdisR { bits } } # [ doc = "Bit 2 - Global IN NAK status" ] # [ inline ( always ) ] pub fn ginsts ( & self ) -> GinstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GinstsR { bits } } # [ doc = "Bit 3 - Global OUT NAK status" ] # [ inline ( always ) ] pub fn gonsts ( & self ) -> GonstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GonstsR { bits } } # [ doc = "Bits 4:6 - Test control" ] # [ inline ( always ) ] pub fn tctl ( & self ) -> TctlR { let bits = { const MASK : u8 = 7 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TctlR { bits } } # [ doc = "Bit 11 - Power-on programming done" ] # [ inline ( always ) ] pub fn poprgdne ( & self ) -> PoprgdneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PoprgdneR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Remote wakeup signaling" ] # [ inline ( always ) ] pub fn rwusig ( & mut self ) -> _RwusigW { _RwusigW { w : self } } # [ doc = "Bit 1 - Soft disconnect" ] # [ inline ( always ) ] pub fn sdis ( & mut self ) -> _SdisW { _SdisW { w : self } } # [ doc = "Bits 4:6 - Test control" ] # [ inline ( always ) ] pub fn tctl ( & mut self ) -> _TctlW { _TctlW { w : self } } # [ doc = "Bit 7 - Set global IN NAK" ] # [ inline ( always ) ] pub fn sginak ( & mut self ) -> _SginakW { _SginakW { w : self } } # [ doc = "Bit 8 - Clear global IN NAK" ] # [ inline ( always ) ] pub fn cginak ( & mut self ) -> _CginakW { _CginakW { w : self } } # [ doc = "Bit 9 - Set global OUT NAK" ] # [ inline ( always ) ] pub fn sgonak ( & mut self ) -> _SgonakW { _SgonakW { w : self } } # [ doc = "Bit 10 - Clear global OUT NAK" ] # [ inline ( always ) ] pub fn cgonak ( & mut self ) -> _CgonakW { _CgonakW { w : self } } # [ doc = "Bit 11 - Power-on programming done" ] # [ inline ( always ) ] pub fn poprgdne ( & mut self ) -> _PoprgdneW { _PoprgdneW { w : self } } } } # [ doc = "OTG_HS device status register" ] pub struct OtgHsDsts { register : VolatileCell < u32 > } # [ doc = "OTG_HS device status register" ] pub mod otg_hs_dsts { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDsts { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct SuspstsR { bits : u8 , } impl SuspstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EnumspdR { bits : u8 , } impl EnumspdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EerrR { bits : u8 , } impl EerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct FnsofR { bits : u16 , } impl FnsofR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Suspend status" ] # [ inline ( always ) ] pub fn suspsts ( & self ) -> SuspstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SuspstsR { bits } } # [ doc = "Bits 1:2 - Enumerated speed" ] # [ inline ( always ) ] pub fn enumspd ( & self ) -> EnumspdR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EnumspdR { bits } } # [ doc = "Bit 3 - Erratic error" ] # [ inline ( always ) ] pub fn eerr ( & self ) -> EerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EerrR { bits } } # [ doc = "Bits 8:21 - Frame number of the received SOF" ] # [ inline ( always ) ] pub fn fnsof ( & self ) -> FnsofR { let bits = { const MASK : u16 = 16383 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; FnsofR { bits } } } } # [ doc = "OTG_HS device IN endpoint common interrupt mask register" ] pub struct OtgHsDiepmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint common interrupt mask register" ] pub mod otg_hs_diepmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TomR { bits : u8 , } impl TomR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfemskR { bits : u8 , } impl IttxfemskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnmmR { bits : u8 , } impl InepnmmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnemR { bits : u8 , } impl InepnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfurmR { bits : u8 , } impl TxfurmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BimR { bits : u8 , } impl BimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TomW < 'a > { w : & 'a mut W , } impl < 'a > _TomW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfemskW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfemskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnmmW < 'a > { w : & 'a mut W , } impl < 'a > _InepnmmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnemW < 'a > { w : & 'a mut W , } impl < 'a > _InepnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfurmW < 'a > { w : & 'a mut W , } impl < 'a > _TxfurmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BimW < 'a > { w : & 'a mut W , } impl < 'a > _BimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & self ) -> TomR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TomR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & self ) -> IttxfemskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfemskR { bits } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & self ) -> InepnmmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnmmR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & self ) -> InepnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnemR { bits } } # [ doc = "Bit 8 - FIFO underrun mask" ] # [ inline ( always ) ] pub fn txfurm ( & self ) -> TxfurmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfurmR { bits } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & self ) -> BimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BimR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & mut self ) -> _TomW { _TomW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & mut self ) -> _IttxfemskW { _IttxfemskW { w : self } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & mut self ) -> _InepnmmW { _InepnmmW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & mut self ) -> _InepnemW { _InepnemW { w : self } } # [ doc = "Bit 8 - FIFO underrun mask" ] # [ inline ( always ) ] pub fn txfurm ( & mut self ) -> _TxfurmW { _TxfurmW { w : self } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & mut self ) -> _BimW { _BimW { w : self } } } } # [ doc = "OTG_HS device OUT endpoint common interrupt mask register" ] pub struct OtgHsDoepmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS device OUT endpoint common interrupt mask register" ] pub mod otg_hs_doepmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupmR { bits : u8 , } impl StupmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdmR { bits : u8 , } impl OtepdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OpemR { bits : u8 , } impl OpemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BoimR { bits : u8 , } impl BoimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupmW < 'a > { w : & 'a mut W , } impl < 'a > _StupmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdmW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OpemW < 'a > { w : & 'a mut W , } impl < 'a > _OpemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BoimW < 'a > { w : & 'a mut W , } impl < 'a > _BoimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - SETUP phase done mask" ] # [ inline ( always ) ] pub fn stupm ( & self ) -> StupmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupmR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ] # [ inline ( always ) ] pub fn otepdm ( & self ) -> OtepdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdmR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received mask" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 8 - OUT packet error mask" ] # [ inline ( always ) ] pub fn opem ( & self ) -> OpemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OpemR { bits } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn boim ( & self ) -> BoimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BoimR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - SETUP phase done mask" ] # [ inline ( always ) ] pub fn stupm ( & mut self ) -> _StupmW { _StupmW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ] # [ inline ( always ) ] pub fn otepdm ( & mut self ) -> _OtepdmW { _OtepdmW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received mask" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 8 - OUT packet error mask" ] # [ inline ( always ) ] pub fn opem ( & mut self ) -> _OpemW { _OpemW { w : self } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn boim ( & mut self ) -> _BoimW { _BoimW { w : self } } } } # [ doc = "OTG_HS device all endpoints interrupt register" ] pub struct OtgHsDaint { register : VolatileCell < u32 > } # [ doc = "OTG_HS device all endpoints interrupt register" ] pub mod otg_hs_daint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDaint { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IepintR { bits : u16 , } impl IepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepintR { bits : u16 , } impl OepintR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint interrupt bits" ] # [ inline ( always ) ] pub fn iepint ( & self ) -> IepintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IepintR { bits } } # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ] # [ inline ( always ) ] pub fn oepint ( & self ) -> OepintR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; OepintR { bits } } } } # [ doc = "OTG_HS all endpoints interrupt mask register" ] pub struct OtgHsDaintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS all endpoints interrupt mask register" ] pub mod otg_hs_daintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDaintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IepmR { bits : u16 , } impl IepmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct OepmR { bits : u16 , } impl OepmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IepmW < 'a > { w : & 'a mut W , } impl < 'a > _IepmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OepmW < 'a > { w : & 'a mut W , } impl < 'a > _OepmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ] # [ inline ( always ) ] pub fn iepm ( & self ) -> IepmR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IepmR { bits } } # [ doc = "Bits 16:31 - OUT EP interrupt mask bits" ] # [ inline ( always ) ] pub fn oepm ( & self ) -> OepmR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; OepmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ] # [ inline ( always ) ] pub fn iepm ( & mut self ) -> _IepmW { _IepmW { w : self } } # [ doc = "Bits 16:31 - OUT EP interrupt mask bits" ] # [ inline ( always ) ] pub fn oepm ( & mut self ) -> _OepmW { _OepmW { w : self } } } } # [ doc = "OTG_HS device VBUS discharge time register" ] pub struct OtgHsDvbusdis { register : VolatileCell < u32 > } # [ doc = "OTG_HS device VBUS discharge time register" ] pub mod otg_hs_dvbusdis { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDvbusdis { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct VbusdtR { bits : u16 , } impl VbusdtR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _VbusdtW < 'a > { w : & 'a mut W , } impl < 'a > _VbusdtW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - Device VBUS discharge time" ] # [ inline ( always ) ] pub fn vbusdt ( & self ) -> VbusdtR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; VbusdtR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 6103 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - Device VBUS discharge time" ] # [ inline ( always ) ] pub fn vbusdt ( & mut self ) -> _VbusdtW { _VbusdtW { w : self } } } } # [ doc = "OTG_HS device VBUS pulsing time register" ] pub struct OtgHsDvbuspulse { register : VolatileCell < u32 > } # [ doc = "OTG_HS device VBUS pulsing time register" ] pub mod otg_hs_dvbuspulse { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDvbuspulse { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DvbuspR { bits : u16 , } impl DvbuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _DvbuspW < 'a > { w : & 'a mut W , } impl < 'a > _DvbuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:11 - Device VBUS pulsing time" ] # [ inline ( always ) ] pub fn dvbusp ( & self ) -> DvbuspR { let bits = { const MASK : u16 = 4095 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; DvbuspR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 1464 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:11 - Device VBUS pulsing time" ] # [ inline ( always ) ] pub fn dvbusp ( & mut self ) -> _DvbuspW { _DvbuspW { w : self } } } } # [ doc = "OTG_HS Device threshold control register" ] pub struct OtgHsDthrctl { register : VolatileCell < u32 > } # [ doc = "OTG_HS Device threshold control register" ] pub mod otg_hs_dthrctl { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDthrctl { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct NonisothrenR { bits : u8 , } impl NonisothrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IsothrenR { bits : u8 , } impl IsothrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxthrlenR { bits : u16 , } impl TxthrlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxthrenR { bits : u8 , } impl RxthrenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxthrlenR { bits : u16 , } impl RxthrlenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct ArpenR { bits : u8 , } impl ArpenR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _NonisothrenW < 'a > { w : & 'a mut W , } impl < 'a > _NonisothrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IsothrenW < 'a > { w : & 'a mut W , } impl < 'a > _IsothrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxthrlenW < 'a > { w : & 'a mut W , } impl < 'a > _TxthrlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 2 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxthrenW < 'a > { w : & 'a mut W , } impl < 'a > _RxthrenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxthrlenW < 'a > { w : & 'a mut W , } impl < 'a > _RxthrlenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _ArpenW < 'a > { w : & 'a mut W , } impl < 'a > _ArpenW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Nonisochronous IN endpoints threshold enable" ] # [ inline ( always ) ] pub fn nonisothren ( & self ) -> NonisothrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NonisothrenR { bits } } # [ doc = "Bit 1 - ISO IN endpoint threshold enable" ] # [ inline ( always ) ] pub fn isothren ( & self ) -> IsothrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IsothrenR { bits } } # [ doc = "Bits 2:10 - Transmit threshold length" ] # [ inline ( always ) ] pub fn txthrlen ( & self ) -> TxthrlenR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 2 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; TxthrlenR { bits } } # [ doc = "Bit 16 - Receive threshold enable" ] # [ inline ( always ) ] pub fn rxthren ( & self ) -> RxthrenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxthrenR { bits } } # [ doc = "Bits 17:25 - Receive threshold length" ] # [ inline ( always ) ] pub fn rxthrlen ( & self ) -> RxthrlenR { let bits = { const MASK : u16 = 511 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; RxthrlenR { bits } } # [ doc = "Bit 27 - Arbiter parking enable" ] # [ inline ( always ) ] pub fn arpen ( & self ) -> ArpenR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; ArpenR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Nonisochronous IN endpoints threshold enable" ] # [ inline ( always ) ] pub fn nonisothren ( & mut self ) -> _NonisothrenW { _NonisothrenW { w : self } } # [ doc = "Bit 1 - ISO IN endpoint threshold enable" ] # [ inline ( always ) ] pub fn isothren ( & mut self ) -> _IsothrenW { _IsothrenW { w : self } } # [ doc = "Bits 2:10 - Transmit threshold length" ] # [ inline ( always ) ] pub fn txthrlen ( & mut self ) -> _TxthrlenW { _TxthrlenW { w : self } } # [ doc = "Bit 16 - Receive threshold enable" ] # [ inline ( always ) ] pub fn rxthren ( & mut self ) -> _RxthrenW { _RxthrenW { w : self } } # [ doc = "Bits 17:25 - Receive threshold length" ] # [ inline ( always ) ] pub fn rxthrlen ( & mut self ) -> _RxthrlenW { _RxthrlenW { w : self } } # [ doc = "Bit 27 - Arbiter parking enable" ] # [ inline ( always ) ] pub fn arpen ( & mut self ) -> _ArpenW { _ArpenW { w : self } } } } # [ doc = "OTG_HS device IN endpoint FIFO empty interrupt mask register" ] pub struct OtgHsDiepempmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint FIFO empty interrupt mask register" ] pub mod otg_hs_diepempmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepempmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IneptxfemR { bits : u16 , } impl IneptxfemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Proxy" ] pub struct _IneptxfemW < 'a > { w : & 'a mut W , } impl < 'a > _IneptxfemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ] # [ inline ( always ) ] pub fn ineptxfem ( & self ) -> IneptxfemR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptxfemR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ] # [ inline ( always ) ] pub fn ineptxfem ( & mut self ) -> _IneptxfemW { _IneptxfemW { w : self } } } } # [ doc = "OTG_HS device each endpoint interrupt register" ] pub struct OtgHsDeachint { register : VolatileCell < u32 > } # [ doc = "OTG_HS device each endpoint interrupt register" ] pub mod otg_hs_deachint { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDeachint { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Iep1intR { bits : u8 , } impl Iep1intR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oep1intR { bits : u8 , } impl Oep1intR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Iep1intW < 'a > { w : & 'a mut W , } impl < 'a > _Iep1intW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oep1intW < 'a > { w : & 'a mut W , } impl < 'a > _Oep1intW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - IN endpoint 1interrupt bit" ] # [ inline ( always ) ] pub fn iep1int ( & self ) -> Iep1intR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Iep1intR { bits } } # [ doc = "Bit 17 - OUT endpoint 1 interrupt bit" ] # [ inline ( always ) ] pub fn oep1int ( & self ) -> Oep1intR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oep1intR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - IN endpoint 1interrupt bit" ] # [ inline ( always ) ] pub fn iep1int ( & mut self ) -> _Iep1intW { _Iep1intW { w : self } } # [ doc = "Bit 17 - OUT endpoint 1 interrupt bit" ] # [ inline ( always ) ] pub fn oep1int ( & mut self ) -> _Oep1intW { _Oep1intW { w : self } } } } # [ doc = "OTG_HS device each endpoint interrupt register mask" ] pub struct OtgHsDeachintmsk { register : VolatileCell < u32 > } # [ doc = "OTG_HS device each endpoint interrupt register mask" ] pub mod otg_hs_deachintmsk { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDeachintmsk { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct Iep1intmR { bits : u8 , } impl Iep1intmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct Oep1intmR { bits : u8 , } impl Oep1intmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _Iep1intmW < 'a > { w : & 'a mut W , } impl < 'a > _Iep1intmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Oep1intmW < 'a > { w : & 'a mut W , } impl < 'a > _Oep1intmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 1 - IN Endpoint 1 interrupt mask bit" ] # [ inline ( always ) ] pub fn iep1intm ( & self ) -> Iep1intmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Iep1intmR { bits } } # [ doc = "Bit 17 - OUT Endpoint 1 interrupt mask bit" ] # [ inline ( always ) ] pub fn oep1intm ( & self ) -> Oep1intmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; Oep1intmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 1 - IN Endpoint 1 interrupt mask bit" ] # [ inline ( always ) ] pub fn iep1intm ( & mut self ) -> _Iep1intmW { _Iep1intmW { w : self } } # [ doc = "Bit 17 - OUT Endpoint 1 interrupt mask bit" ] # [ inline ( always ) ] pub fn oep1intm ( & mut self ) -> _Oep1intmW { _Oep1intmW { w : self } } } } # [ doc = "OTG_HS device each in endpoint-1 interrupt register" ] pub struct OtgHsDiepeachmsk1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device each in endpoint-1 interrupt register" ] pub mod otg_hs_diepeachmsk1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepeachmsk1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TomR { bits : u8 , } impl TomR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfemskR { bits : u8 , } impl IttxfemskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnmmR { bits : u8 , } impl InepnmmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnemR { bits : u8 , } impl InepnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfurmR { bits : u8 , } impl TxfurmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BimR { bits : u8 , } impl BimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TomW < 'a > { w : & 'a mut W , } impl < 'a > _TomW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfemskW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfemskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnmmW < 'a > { w : & 'a mut W , } impl < 'a > _InepnmmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnemW < 'a > { w : & 'a mut W , } impl < 'a > _InepnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfurmW < 'a > { w : & 'a mut W , } impl < 'a > _TxfurmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BimW < 'a > { w : & 'a mut W , } impl < 'a > _BimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & self ) -> TomR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TomR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & self ) -> IttxfemskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfemskR { bits } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & self ) -> InepnmmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnmmR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & self ) -> InepnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnemR { bits } } # [ doc = "Bit 8 - FIFO underrun mask" ] # [ inline ( always ) ] pub fn txfurm ( & self ) -> TxfurmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfurmR { bits } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & self ) -> BimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BimR { bits } } # [ doc = "Bit 13 - NAK interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ] # [ inline ( always ) ] pub fn tom ( & mut self ) -> _TomW { _TomW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & mut self ) -> _IttxfemskW { _IttxfemskW { w : self } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & mut self ) -> _InepnmmW { _InepnmmW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & mut self ) -> _InepnemW { _InepnemW { w : self } } # [ doc = "Bit 8 - FIFO underrun mask" ] # [ inline ( always ) ] pub fn txfurm ( & mut self ) -> _TxfurmW { _TxfurmW { w : self } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & mut self ) -> _BimW { _BimW { w : self } } # [ doc = "Bit 13 - NAK interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } } } # [ doc = "OTG_HS device each OUT endpoint-1 interrupt register" ] pub struct OtgHsDoepeachmsk1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device each OUT endpoint-1 interrupt register" ] pub mod otg_hs_doepeachmsk1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepeachmsk1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcmR { bits : u8 , } impl XfrcmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdmR { bits : u8 , } impl EpdmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TomR { bits : u8 , } impl TomR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfemskR { bits : u8 , } impl IttxfemskR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnmmR { bits : u8 , } impl InepnmmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepnemR { bits : u8 , } impl InepnemR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfurmR { bits : u8 , } impl TxfurmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BimR { bits : u8 , } impl BimR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrmR { bits : u8 , } impl BerrmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakmR { bits : u8 , } impl NakmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetmR { bits : u8 , } impl NyetmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcmW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdmW < 'a > { w : & 'a mut W , } impl < 'a > _EpdmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TomW < 'a > { w : & 'a mut W , } impl < 'a > _TomW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfemskW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfemskW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnmmW < 'a > { w : & 'a mut W , } impl < 'a > _InepnmmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepnemW < 'a > { w : & 'a mut W , } impl < 'a > _InepnemW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfurmW < 'a > { w : & 'a mut W , } impl < 'a > _TxfurmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BimW < 'a > { w : & 'a mut W , } impl < 'a > _BimW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrmW < 'a > { w : & 'a mut W , } impl < 'a > _BerrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakmW < 'a > { w : & 'a mut W , } impl < 'a > _NakmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetmW < 'a > { w : & 'a mut W , } impl < 'a > _NyetmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & self ) -> XfrcmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcmR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & self ) -> EpdmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdmR { bits } } # [ doc = "Bit 3 - Timeout condition mask" ] # [ inline ( always ) ] pub fn tom ( & self ) -> TomR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TomR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & self ) -> IttxfemskR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfemskR { bits } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & self ) -> InepnmmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 5 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnmmR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & self ) -> InepnemR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepnemR { bits } } # [ doc = "Bit 8 - OUT packet error mask" ] # [ inline ( always ) ] pub fn txfurm ( & self ) -> TxfurmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfurmR { bits } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & self ) -> BimR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BimR { bits } } # [ doc = "Bit 12 - Bubble error interrupt mask" ] # [ inline ( always ) ] pub fn berrm ( & self ) -> BerrmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrmR { bits } } # [ doc = "Bit 13 - NAK interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & self ) -> NakmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakmR { bits } } # [ doc = "Bit 14 - NYET interrupt mask" ] # [ inline ( always ) ] pub fn nyetm ( & self ) -> NyetmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetmR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt mask" ] # [ inline ( always ) ] pub fn xfrcm ( & mut self ) -> _XfrcmW { _XfrcmW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ] # [ inline ( always ) ] pub fn epdm ( & mut self ) -> _EpdmW { _EpdmW { w : self } } # [ doc = "Bit 3 - Timeout condition mask" ] # [ inline ( always ) ] pub fn tom ( & mut self ) -> _TomW { _TomW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ] # [ inline ( always ) ] pub fn ittxfemsk ( & mut self ) -> _IttxfemskW { _IttxfemskW { w : self } } # [ doc = "Bit 5 - IN token received with EP mismatch mask" ] # [ inline ( always ) ] pub fn inepnmm ( & mut self ) -> _InepnmmW { _InepnmmW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective mask" ] # [ inline ( always ) ] pub fn inepnem ( & mut self ) -> _InepnemW { _InepnemW { w : self } } # [ doc = "Bit 8 - OUT packet error mask" ] # [ inline ( always ) ] pub fn txfurm ( & mut self ) -> _TxfurmW { _TxfurmW { w : self } } # [ doc = "Bit 9 - BNA interrupt mask" ] # [ inline ( always ) ] pub fn bim ( & mut self ) -> _BimW { _BimW { w : self } } # [ doc = "Bit 12 - Bubble error interrupt mask" ] # [ inline ( always ) ] pub fn berrm ( & mut self ) -> _BerrmW { _BerrmW { w : self } } # [ doc = "Bit 13 - NAK interrupt mask" ] # [ inline ( always ) ] pub fn nakm ( & mut self ) -> _NakmW { _NakmW { w : self } } # [ doc = "Bit 14 - NYET interrupt mask" ] # [ inline ( always ) ] pub fn nyetm ( & mut self ) -> _NyetmW { _NyetmW { w : self } } } } # [ doc = "OTG device endpoint-0 control register" ] pub struct OtgHsDiepctl0 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-0 control register" ] pub mod otg_hs_diepctl0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-1 control register" ] pub struct OtgHsDiepctl1 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-1 control register" ] pub mod otg_hs_diepctl1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-2 control register" ] pub struct OtgHsDiepctl2 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-2 control register" ] pub mod otg_hs_diepctl2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-3 control register" ] pub struct OtgHsDiepctl3 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-3 control register" ] pub mod otg_hs_diepctl3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-4 control register" ] pub struct OtgHsDiepctl4 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-4 control register" ] pub mod otg_hs_diepctl4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-5 control register" ] pub struct OtgHsDiepctl5 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-5 control register" ] pub mod otg_hs_diepctl5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-6 control register" ] pub struct OtgHsDiepctl6 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-6 control register" ] pub mod otg_hs_diepctl6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-7 control register" ] pub struct OtgHsDiepctl7 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-7 control register" ] pub mod otg_hs_diepctl7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepctl7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfnumR { bits : u8 , } impl TxfnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfnumW < 'a > { w : & 'a mut W , } impl < 'a > _TxfnumW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even/odd frame" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & self ) -> TxfnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 22 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfnumR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bits 22:25 - TxFIFO number" ] # [ inline ( always ) ] pub fn txfnum ( & mut self ) -> _TxfnumW { _TxfnumW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-0 interrupt register" ] pub struct OtgHsDiepint0 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-0 interrupt register" ] pub mod otg_hs_diepint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-1 interrupt register" ] pub struct OtgHsDiepint1 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-1 interrupt register" ] pub mod otg_hs_diepint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-2 interrupt register" ] pub struct OtgHsDiepint2 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-2 interrupt register" ] pub mod otg_hs_diepint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-3 interrupt register" ] pub struct OtgHsDiepint3 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-3 interrupt register" ] pub mod otg_hs_diepint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-4 interrupt register" ] pub struct OtgHsDiepint4 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-4 interrupt register" ] pub mod otg_hs_diepint4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-5 interrupt register" ] pub struct OtgHsDiepint5 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-5 interrupt register" ] pub mod otg_hs_diepint5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-6 interrupt register" ] pub struct OtgHsDiepint6 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-6 interrupt register" ] pub mod otg_hs_diepint6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG device endpoint-7 interrupt register" ] pub struct OtgHsDiepint7 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-7 interrupt register" ] pub mod otg_hs_diepint7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepint7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TocR { bits : u8 , } impl TocR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IttxfeR { bits : u8 , } impl IttxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct InepneR { bits : u8 , } impl InepneR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfeR { bits : u8 , } impl TxfeR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct TxfifoudrnR { bits : u8 , } impl TxfifoudrnR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BnaR { bits : u8 , } impl BnaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktdrpstsR { bits : u8 , } impl PktdrpstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct BerrR { bits : u8 , } impl BerrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakR { bits : u8 , } impl NakR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TocW < 'a > { w : & 'a mut W , } impl < 'a > _TocW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IttxfeW < 'a > { w : & 'a mut W , } impl < 'a > _IttxfeW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _InepneW < 'a > { w : & 'a mut W , } impl < 'a > _InepneW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _TxfifoudrnW < 'a > { w : & 'a mut W , } impl < 'a > _TxfifoudrnW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BnaW < 'a > { w : & 'a mut W , } impl < 'a > _BnaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktdrpstsW < 'a > { w : & 'a mut W , } impl < 'a > _PktdrpstsW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _BerrW < 'a > { w : & 'a mut W , } impl < 'a > _BerrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NakW < 'a > { w : & 'a mut W , } impl < 'a > _NakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & self ) -> TocR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TocR { bits } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & self ) -> IttxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IttxfeR { bits } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & self ) -> InepneR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; InepneR { bits } } # [ doc = "Bit 7 - Transmit FIFO empty" ] # [ inline ( always ) ] pub fn txfe ( & self ) -> TxfeR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 7 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfeR { bits } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & self ) -> TxfifoudrnR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; TxfifoudrnR { bits } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & self ) -> BnaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 9 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BnaR { bits } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & self ) -> PktdrpstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 11 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktdrpstsR { bits } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & self ) -> BerrR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 12 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; BerrR { bits } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & self ) -> NakR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 13 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - Timeout condition" ] # [ inline ( always ) ] pub fn toc ( & mut self ) -> _TocW { _TocW { w : self } } # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ] # [ inline ( always ) ] pub fn ittxfe ( & mut self ) -> _IttxfeW { _IttxfeW { w : self } } # [ doc = "Bit 6 - IN endpoint NAK effective" ] # [ inline ( always ) ] pub fn inepne ( & mut self ) -> _InepneW { _InepneW { w : self } } # [ doc = "Bit 8 - Transmit Fifo Underrun" ] # [ inline ( always ) ] pub fn txfifoudrn ( & mut self ) -> _TxfifoudrnW { _TxfifoudrnW { w : self } } # [ doc = "Bit 9 - Buffer not available interrupt" ] # [ inline ( always ) ] pub fn bna ( & mut self ) -> _BnaW { _BnaW { w : self } } # [ doc = "Bit 11 - Packet dropped status" ] # [ inline ( always ) ] pub fn pktdrpsts ( & mut self ) -> _PktdrpstsW { _PktdrpstsW { w : self } } # [ doc = "Bit 12 - Babble error interrupt" ] # [ inline ( always ) ] pub fn berr ( & mut self ) -> _BerrW { _BerrW { w : self } } # [ doc = "Bit 13 - NAK interrupt" ] # [ inline ( always ) ] pub fn nak ( & mut self ) -> _NakW { _NakW { w : self } } } } # [ doc = "OTG_HS device IN endpoint 0 transfer size register" ] pub struct OtgHsDieptsiz0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint 0 transfer size register" ] pub mod otg_hs_dieptsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u8 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u8 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrsizR { bits } } # [ doc = "Bits 19:20 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:20 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } } } # [ doc = "OTG_HS device endpoint-1 DMA address register" ] pub struct OtgHsDiepdma1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-1 DMA address register" ] pub mod otg_hs_diepdma1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepdma1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS device endpoint-2 DMA address register" ] pub struct OtgHsDiepdma2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-2 DMA address register" ] pub mod otg_hs_diepdma2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepdma2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS device endpoint-3 DMA address register" ] pub struct OtgHsDiepdma3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-3 DMA address register" ] pub mod otg_hs_diepdma3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepdma3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS device endpoint-4 DMA address register" ] pub struct OtgHsDiepdma4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-4 DMA address register" ] pub mod otg_hs_diepdma4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepdma4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS device endpoint-5 DMA address register" ] pub struct OtgHsDiepdma5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-5 DMA address register" ] pub mod otg_hs_diepdma5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDiepdma5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct DmaaddrR { bits : u32 , } impl DmaaddrR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _DmaaddrW < 'a > { w : & 'a mut W , } impl < 'a > _DmaaddrW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & self ) -> DmaaddrR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; DmaaddrR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - DMA address" ] # [ inline ( always ) ] pub fn dmaaddr ( & mut self ) -> _DmaaddrW { _DmaaddrW { w : self } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts0 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts3 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts4 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub struct OtgHsDtxfsts5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ] pub mod otg_hs_dtxfsts5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: OtgHsDtxfsts5 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IneptfsavR { bits : u16 , } impl IneptfsavR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ] # [ inline ( always ) ] pub fn ineptfsav ( & self ) -> IneptfsavR { let bits = { const MASK : u16 = 65535 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; IneptfsavR { bits } } } } # [ doc = "OTG_HS device endpoint transfer size register" ] pub struct OtgHsDieptsiz1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint transfer size register" ] pub mod otg_hs_dieptsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } } } # [ doc = "OTG_HS device endpoint transfer size register" ] pub struct OtgHsDieptsiz2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint transfer size register" ] pub mod otg_hs_dieptsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } } } # [ doc = "OTG_HS device endpoint transfer size register" ] pub struct OtgHsDieptsiz3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint transfer size register" ] pub mod otg_hs_dieptsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } } } # [ doc = "OTG_HS device endpoint transfer size register" ] pub struct OtgHsDieptsiz4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint transfer size register" ] pub mod otg_hs_dieptsiz4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } } } # [ doc = "OTG_HS device endpoint transfer size register" ] pub struct OtgHsDieptsiz5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint transfer size register" ] pub mod otg_hs_dieptsiz5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDieptsiz5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct McntR { bits : u8 , } impl McntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _McntW < 'a > { w : & 'a mut W , } impl < 'a > _McntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & self ) -> McntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; McntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Multi count" ] # [ inline ( always ) ] pub fn mcnt ( & mut self ) -> _McntW { _McntW { w : self } } } } # [ doc = "OTG_HS device control OUT endpoint 0 control register" ] pub struct OtgHsDoepctl0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device control OUT endpoint 0 control register" ] pub mod otg_hs_doepctl0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepctl0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u8 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:1 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 32768 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-1 control register" ] pub struct OtgHsDoepctl1 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-1 control register" ] pub mod otg_hs_doepctl1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepctl1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-2 control register" ] pub struct OtgHsDoepctl2 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-2 control register" ] pub mod otg_hs_doepctl2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepctl2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG device endpoint-3 control register" ] pub struct OtgHsDoepctl3 { register : VolatileCell < u32 > } # [ doc = "OTG device endpoint-3 control register" ] pub mod otg_hs_doepctl3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepctl3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct MpsizR { bits : u16 , } impl MpsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct UsbaepR { bits : u8 , } impl UsbaepR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EonumDpidR { bits : u8 , } impl EonumDpidR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NakstsR { bits : u8 , } impl NakstsR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EptypR { bits : u8 , } impl EptypR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct SnpmR { bits : u8 , } impl SnpmR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StallR { bits : u8 , } impl StallR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisR { bits : u8 , } impl EpdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpenaR { bits : u8 , } impl EpenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _MpsizW < 'a > { w : & 'a mut W , } impl < 'a > _MpsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _UsbaepW < 'a > { w : & 'a mut W , } impl < 'a > _UsbaepW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EptypW < 'a > { w : & 'a mut W , } impl < 'a > _EptypW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnpmW < 'a > { w : & 'a mut W , } impl < 'a > _SnpmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StallW < 'a > { w : & 'a mut W , } impl < 'a > _StallW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _CnakW < 'a > { w : & 'a mut W , } impl < 'a > _CnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 26 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SnakW < 'a > { w : & 'a mut W , } impl < 'a > _SnakW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 27 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _Sd0pidSevnfrmW < 'a > { w : & 'a mut W , } impl < 'a > _Sd0pidSevnfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 28 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _SoddfrmW < 'a > { w : & 'a mut W , } impl < 'a > _SoddfrmW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpenaW < 'a > { w : & 'a mut W , } impl < 'a > _EpenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & self ) -> MpsizR { let bits = { const MASK : u16 = 2047 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; MpsizR { bits } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & self ) -> UsbaepR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 15 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; UsbaepR { bits } } # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ] # [ inline ( always ) ] pub fn eonum_dpid ( & self ) -> EonumDpidR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EonumDpidR { bits } } # [ doc = "Bit 17 - NAK status" ] # [ inline ( always ) ] pub fn naksts ( & self ) -> NakstsR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 17 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NakstsR { bits } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & self ) -> EptypR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 18 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EptypR { bits } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & self ) -> SnpmR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 20 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; SnpmR { bits } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & self ) -> StallR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 21 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StallR { bits } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & self ) -> EpdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 30 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisR { bits } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & self ) -> EpenaR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 31 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:10 - Maximum packet size" ] # [ inline ( always ) ] pub fn mpsiz ( & mut self ) -> _MpsizW { _MpsizW { w : self } } # [ doc = "Bit 15 - USB active endpoint" ] # [ inline ( always ) ] pub fn usbaep ( & mut self ) -> _UsbaepW { _UsbaepW { w : self } } # [ doc = "Bits 18:19 - Endpoint type" ] # [ inline ( always ) ] pub fn eptyp ( & mut self ) -> _EptypW { _EptypW { w : self } } # [ doc = "Bit 20 - Snoop mode" ] # [ inline ( always ) ] pub fn snpm ( & mut self ) -> _SnpmW { _SnpmW { w : self } } # [ doc = "Bit 21 - STALL handshake" ] # [ inline ( always ) ] pub fn stall ( & mut self ) -> _StallW { _StallW { w : self } } # [ doc = "Bit 26 - Clear NAK" ] # [ inline ( always ) ] pub fn cnak ( & mut self ) -> _CnakW { _CnakW { w : self } } # [ doc = "Bit 27 - Set NAK" ] # [ inline ( always ) ] pub fn snak ( & mut self ) -> _SnakW { _SnakW { w : self } } # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ] # [ inline ( always ) ] pub fn sd0pid_sevnfrm ( & mut self ) -> _Sd0pidSevnfrmW { _Sd0pidSevnfrmW { w : self } } # [ doc = "Bit 29 - Set odd frame" ] # [ inline ( always ) ] pub fn soddfrm ( & mut self ) -> _SoddfrmW { _SoddfrmW { w : self } } # [ doc = "Bit 30 - Endpoint disable" ] # [ inline ( always ) ] pub fn epdis ( & mut self ) -> _EpdisW { _EpdisW { w : self } } # [ doc = "Bit 31 - Endpoint enable" ] # [ inline ( always ) ] pub fn epena ( & mut self ) -> _EpenaW { _EpenaW { w : self } } } } # [ doc = "OTG_HS device endpoint-0 interrupt register" ] pub struct OtgHsDoepint0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-0 interrupt register" ] pub mod otg_hs_doepint0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 128 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-1 interrupt register" ] pub struct OtgHsDoepint1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-1 interrupt register" ] pub mod otg_hs_doepint1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-2 interrupt register" ] pub struct OtgHsDoepint2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-2 interrupt register" ] pub mod otg_hs_doepint2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-3 interrupt register" ] pub struct OtgHsDoepint3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-3 interrupt register" ] pub mod otg_hs_doepint3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-4 interrupt register" ] pub struct OtgHsDoepint4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-4 interrupt register" ] pub mod otg_hs_doepint4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-5 interrupt register" ] pub struct OtgHsDoepint5 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-5 interrupt register" ] pub mod otg_hs_doepint5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-6 interrupt register" ] pub struct OtgHsDoepint6 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-6 interrupt register" ] pub mod otg_hs_doepint6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-7 interrupt register" ] pub struct OtgHsDoepint7 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-7 interrupt register" ] pub mod otg_hs_doepint7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoepint7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrcR { bits : u8 , } impl XfrcR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct EpdisdR { bits : u8 , } impl EpdisdR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupR { bits : u8 , } impl StupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct OtepdisR { bits : u8 , } impl OtepdisR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct B2bstupR { bits : u8 , } impl B2bstupR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct NyetR { bits : u8 , } impl NyetR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrcW < 'a > { w : & 'a mut W , } impl < 'a > _XfrcW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _EpdisdW < 'a > { w : & 'a mut W , } impl < 'a > _EpdisdW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupW < 'a > { w : & 'a mut W , } impl < 'a > _StupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _OtepdisW < 'a > { w : & 'a mut W , } impl < 'a > _OtepdisW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _B2bstupW < 'a > { w : & 'a mut W , } impl < 'a > _B2bstupW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _NyetW < 'a > { w : & 'a mut W , } impl < 'a > _NyetW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & self ) -> XfrcR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrcR { bits } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & self ) -> EpdisdR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; EpdisdR { bits } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & self ) -> StupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 3 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupR { bits } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & self ) -> OtepdisR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; OtepdisR { bits } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & self ) -> B2bstupR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 6 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; B2bstupR { bits } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & self ) -> NyetR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 14 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; NyetR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Transfer completed interrupt" ] # [ inline ( always ) ] pub fn xfrc ( & mut self ) -> _XfrcW { _XfrcW { w : self } } # [ doc = "Bit 1 - Endpoint disabled interrupt" ] # [ inline ( always ) ] pub fn epdisd ( & mut self ) -> _EpdisdW { _EpdisdW { w : self } } # [ doc = "Bit 3 - SETUP phase done" ] # [ inline ( always ) ] pub fn stup ( & mut self ) -> _StupW { _StupW { w : self } } # [ doc = "Bit 4 - OUT token received when endpoint disabled" ] # [ inline ( always ) ] pub fn otepdis ( & mut self ) -> _OtepdisW { _OtepdisW { w : self } } # [ doc = "Bit 6 - Back-to-back SETUP packets received" ] # [ inline ( always ) ] pub fn b2bstup ( & mut self ) -> _B2bstupW { _B2bstupW { w : self } } # [ doc = "Bit 14 - NYET interrupt" ] # [ inline ( always ) ] pub fn nyet ( & mut self ) -> _NyetW { _NyetW { w : self } } } } # [ doc = "OTG_HS device endpoint-1 transfer size register" ] pub struct OtgHsDoeptsiz0 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-1 transfer size register" ] pub mod otg_hs_doeptsiz0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoeptsiz0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u8 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u8 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct StupcntR { bits : u8 , } impl StupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _StupcntW < 'a > { w : & 'a mut W , } impl < 'a > _StupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u8 = 127 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; XfrsizR { bits } } # [ doc = "Bit 19 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - SETUP packet count" ] # [ inline ( always ) ] pub fn stupcnt ( & self ) -> StupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StupcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:6 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bit 19 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - SETUP packet count" ] # [ inline ( always ) ] pub fn stupcnt ( & mut self ) -> _StupcntW { _StupcntW { w : self } } } } # [ doc = "OTG_HS device endpoint-2 transfer size register" ] pub struct OtgHsDoeptsiz1 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-2 transfer size register" ] pub mod otg_hs_doeptsiz1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoeptsiz1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } } } # [ doc = "OTG_HS device endpoint-3 transfer size register" ] pub struct OtgHsDoeptsiz2 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-3 transfer size register" ] pub mod otg_hs_doeptsiz2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoeptsiz2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } } } # [ doc = "OTG_HS device endpoint-4 transfer size register" ] pub struct OtgHsDoeptsiz3 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-4 transfer size register" ] pub mod otg_hs_doeptsiz3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoeptsiz3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } } } # [ doc = "OTG_HS device endpoint-5 transfer size register" ] pub struct OtgHsDoeptsiz4 { register : VolatileCell < u32 > } # [ doc = "OTG_HS device endpoint-5 transfer size register" ] pub mod otg_hs_doeptsiz4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsDoeptsiz4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct XfrsizR { bits : u32 , } impl XfrsizR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Value of the field" ] pub struct PktcntR { bits : u16 , } impl PktcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u16 { self . bits } } # [ doc = r" Value of the field" ] pub struct RxdpidStupcntR { bits : u8 , } impl RxdpidStupcntR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _XfrsizW < 'a > { w : & 'a mut W , } impl < 'a > _XfrsizW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PktcntW < 'a > { w : & 'a mut W , } impl < 'a > _PktcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _RxdpidStupcntW < 'a > { w : & 'a mut W , } impl < 'a > _RxdpidStupcntW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & self ) -> XfrsizR { let bits = { const MASK : u32 = 524287 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; XfrsizR { bits } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & self ) -> PktcntR { let bits = { const MASK : u16 = 1023 ; const OFFSET : u8 = 19 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u16 } ; PktcntR { bits } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & self ) -> RxdpidStupcntR { let bits = { const MASK : u8 = 3 ; const OFFSET : u8 = 29 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; RxdpidStupcntR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:18 - Transfer size" ] # [ inline ( always ) ] pub fn xfrsiz ( & mut self ) -> _XfrsizW { _XfrsizW { w : self } } # [ doc = "Bits 19:28 - Packet count" ] # [ inline ( always ) ] pub fn pktcnt ( & mut self ) -> _PktcntW { _PktcntW { w : self } } # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ] # [ inline ( always ) ] pub fn rxdpid_stupcnt ( & mut self ) -> _RxdpidStupcntW { _RxdpidStupcntW { w : self } } } } } # [ doc = "USB on the go high speed" ] pub struct OtgHsDevice { register_block : otg_hs_device :: RegisterBlock } impl Deref for OtgHsDevice { type Target = otg_hs_device :: RegisterBlock ; fn deref ( & self ) -> & otg_hs_device :: RegisterBlock { & self . register_block } } # [ doc = "USB on the go high speed" ] pub const OTG_HS_PWRCLK : Peripheral < OtgHsPwrclk > = unsafe { Peripheral :: new ( 1074007552 ) } ; # [ doc = "USB on the go high speed" ] pub mod otg_hs_pwrclk { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { # [ doc = "0x00 - Power and clock gating control register" ] pub otg_hs_pcgcr : OtgHsPcgcr , } # [ doc = "Power and clock gating control register" ] pub struct OtgHsPcgcr { register : VolatileCell < u32 > } # [ doc = "Power and clock gating control register" ] pub mod otg_hs_pcgcr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: OtgHsPcgcr { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct StppclkR { bits : u8 , } impl StppclkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct GatehclkR { bits : u8 , } impl GatehclkR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct PhysuspR { bits : u8 , } impl PhysuspR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _StppclkW < 'a > { w : & 'a mut W , } impl < 'a > _StppclkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _GatehclkW < 'a > { w : & 'a mut W , } impl < 'a > _GatehclkW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _PhysuspW < 'a > { w : & 'a mut W , } impl < 'a > _PhysuspW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bit 0 - Stop PHY clock" ] # [ inline ( always ) ] pub fn stppclk ( & self ) -> StppclkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; StppclkR { bits } } # [ doc = "Bit 1 - Gate HCLK" ] # [ inline ( always ) ] pub fn gatehclk ( & self ) -> GatehclkR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 1 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; GatehclkR { bits } } # [ doc = "Bit 4 - PHY suspended" ] # [ inline ( always ) ] pub fn physusp ( & self ) -> PhysuspR { let bits = { const MASK : u8 = 1 ; const OFFSET : u8 = 4 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; PhysuspR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bit 0 - Stop PHY clock" ] # [ inline ( always ) ] pub fn stppclk ( & mut self ) -> _StppclkW { _StppclkW { w : self } } # [ doc = "Bit 1 - Gate HCLK" ] # [ inline ( always ) ] pub fn gatehclk ( & mut self ) -> _GatehclkW { _GatehclkW { w : self } } # [ doc = "Bit 4 - PHY suspended" ] # [ inline ( always ) ] pub fn physusp ( & mut self ) -> _PhysuspW { _PhysuspW { w : self } } } } } # [ doc = "USB on the go high speed" ] pub struct OtgHsPwrclk { register_block : otg_hs_pwrclk :: RegisterBlock } impl Deref for OtgHsPwrclk { type Target = otg_hs_pwrclk :: RegisterBlock ; fn deref ( & self ) -> & otg_hs_pwrclk :: RegisterBlock { & self . register_block } } # [ doc = "Nested Vectored Interrupt Controller" ] pub const NVIC : Peripheral < Nvic > = unsafe { Peripheral :: new ( 3758153728 ) } ; # [ doc = "Nested Vectored Interrupt Controller" ] pub mod nvic { use vcell :: VolatileCell ; # [ doc = r" Register block" ] # [ repr ( C ) ] pub struct RegisterBlock { _reserved0 : [ u8 ; 4usize ] , # [ doc = "0x04 - Interrupt Controller Type Register" ] pub ictr : Ictr , _reserved1 : [ u8 ; 248usize ] , # [ doc = "0x100 - Interrupt Set-Enable Register" ] pub iser0 : Iser0 , # [ doc = "0x104 - Interrupt Set-Enable Register" ] pub iser1 : Iser1 , # [ doc = "0x108 - Interrupt Set-Enable Register" ] pub iser2 : Iser2 , _reserved2 : [ u8 ; 116usize ] , # [ doc = "0x180 - Interrupt Clear-Enable Register" ] pub icer0 : Icer0 , # [ doc = "0x184 - Interrupt Clear-Enable Register" ] pub icer1 : Icer1 , # [ doc = "0x188 - Interrupt Clear-Enable Register" ] pub icer2 : Icer2 , _reserved3 : [ u8 ; 116usize ] , # [ doc = "0x200 - Interrupt Set-Pending Register" ] pub ispr0 : Ispr0 , # [ doc = "0x204 - Interrupt Set-Pending Register" ] pub ispr1 : Ispr1 , # [ doc = "0x208 - Interrupt Set-Pending Register" ] pub ispr2 : Ispr2 , _reserved4 : [ u8 ; 116usize ] , # [ doc = "0x280 - Interrupt Clear-Pending Register" ] pub icpr0 : Icpr0 , # [ doc = "0x284 - Interrupt Clear-Pending Register" ] pub icpr1 : Icpr1 , # [ doc = "0x288 - Interrupt Clear-Pending Register" ] pub icpr2 : Icpr2 , _reserved5 : [ u8 ; 116usize ] , # [ doc = "0x300 - Interrupt Active Bit Register" ] pub iabr0 : Iabr0 , # [ doc = "0x304 - Interrupt Active Bit Register" ] pub iabr1 : Iabr1 , # [ doc = "0x308 - Interrupt Active Bit Register" ] pub iabr2 : Iabr2 , _reserved6 : [ u8 ; 244usize ] , # [ doc = "0x400 - Interrupt Priority Register" ] pub ipr0 : Ipr0 , # [ doc = "0x404 - Interrupt Priority Register" ] pub ipr1 : Ipr1 , # [ doc = "0x408 - Interrupt Priority Register" ] pub ipr2 : Ipr2 , # [ doc = "0x40c - Interrupt Priority Register" ] pub ipr3 : Ipr3 , # [ doc = "0x410 - Interrupt Priority Register" ] pub ipr4 : Ipr4 , # [ doc = "0x414 - Interrupt Priority Register" ] pub ipr5 : Ipr5 , # [ doc = "0x418 - Interrupt Priority Register" ] pub ipr6 : Ipr6 , # [ doc = "0x41c - Interrupt Priority Register" ] pub ipr7 : Ipr7 , # [ doc = "0x420 - Interrupt Priority Register" ] pub ipr8 : Ipr8 , # [ doc = "0x424 - Interrupt Priority Register" ] pub ipr9 : Ipr9 , # [ doc = "0x428 - Interrupt Priority Register" ] pub ipr10 : Ipr10 , # [ doc = "0x42c - Interrupt Priority Register" ] pub ipr11 : Ipr11 , # [ doc = "0x430 - Interrupt Priority Register" ] pub ipr12 : Ipr12 , # [ doc = "0x434 - Interrupt Priority Register" ] pub ipr13 : Ipr13 , # [ doc = "0x438 - Interrupt Priority Register" ] pub ipr14 : Ipr14 , # [ doc = "0x43c - Interrupt Priority Register" ] pub ipr15 : Ipr15 , # [ doc = "0x440 - Interrupt Priority Register" ] pub ipr16 : Ipr16 , # [ doc = "0x444 - Interrupt Priority Register" ] pub ipr17 : Ipr17 , # [ doc = "0x448 - Interrupt Priority Register" ] pub ipr18 : Ipr18 , # [ doc = "0x44c - Interrupt Priority Register" ] pub ipr19 : Ipr19 , _reserved7 : [ u8 ; 2736usize ] , # [ doc = "0xf00 - Software Triggered Interrupt Register" ] pub stir : Stir , } # [ doc = "Interrupt Controller Type Register" ] pub struct Ictr { register : VolatileCell < u32 > } # [ doc = "Interrupt Controller Type Register" ] pub mod ictr { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Ictr { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct IntlinesnumR { bits : u8 , } impl IntlinesnumR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:3 - Total number of interrupt lines in groups" ] # [ inline ( always ) ] pub fn intlinesnum ( & self ) -> IntlinesnumR { let bits = { const MASK : u8 = 15 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IntlinesnumR { bits } } } } # [ doc = "Software Triggered Interrupt Register" ] pub struct Stir { register : VolatileCell < u32 > } # [ doc = "Software Triggered Interrupt Register" ] pub mod stir { # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Stir { # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Proxy" ] pub struct _IntidW < 'a > { w : & 'a mut W , } impl < 'a > _IntidW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u16 ) -> & 'a mut W { const MASK : u16 = 511 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:8 - interrupt to be triggered" ] # [ inline ( always ) ] pub fn intid ( & mut self ) -> _IntidW { _IntidW { w : self } } } } # [ doc = "Interrupt Set-Enable Register" ] pub struct Iser0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Enable Register" ] pub mod iser0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Iser0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetenaR { bits : u32 , } impl SetenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetenaW < 'a > { w : & 'a mut W , } impl < 'a > _SetenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & self ) -> SetenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & mut self ) -> _SetenaW { _SetenaW { w : self } } } } # [ doc = "Interrupt Set-Enable Register" ] pub struct Iser1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Enable Register" ] pub mod iser1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Iser1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetenaR { bits : u32 , } impl SetenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetenaW < 'a > { w : & 'a mut W , } impl < 'a > _SetenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & self ) -> SetenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & mut self ) -> _SetenaW { _SetenaW { w : self } } } } # [ doc = "Interrupt Set-Enable Register" ] pub struct Iser2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Enable Register" ] pub mod iser2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Iser2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetenaR { bits : u32 , } impl SetenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetenaW < 'a > { w : & 'a mut W , } impl < 'a > _SetenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & self ) -> SetenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETENA" ] # [ inline ( always ) ] pub fn setena ( & mut self ) -> _SetenaW { _SetenaW { w : self } } } } # [ doc = "Interrupt Clear-Enable Register" ] pub struct Icer0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Enable Register" ] pub mod icer0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icer0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrenaR { bits : u32 , } impl ClrenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrenaW < 'a > { w : & 'a mut W , } impl < 'a > _ClrenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & self ) -> ClrenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & mut self ) -> _ClrenaW { _ClrenaW { w : self } } } } # [ doc = "Interrupt Clear-Enable Register" ] pub struct Icer1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Enable Register" ] pub mod icer1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icer1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrenaR { bits : u32 , } impl ClrenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrenaW < 'a > { w : & 'a mut W , } impl < 'a > _ClrenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & self ) -> ClrenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & mut self ) -> _ClrenaW { _ClrenaW { w : self } } } } # [ doc = "Interrupt Clear-Enable Register" ] pub struct Icer2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Enable Register" ] pub mod icer2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icer2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrenaR { bits : u32 , } impl ClrenaR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrenaW < 'a > { w : & 'a mut W , } impl < 'a > _ClrenaW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & self ) -> ClrenaR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrenaR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRENA" ] # [ inline ( always ) ] pub fn clrena ( & mut self ) -> _ClrenaW { _ClrenaW { w : self } } } } # [ doc = "Interrupt Set-Pending Register" ] pub struct Ispr0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Pending Register" ] pub mod ispr0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ispr0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetpendR { bits : u32 , } impl SetpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetpendW < 'a > { w : & 'a mut W , } impl < 'a > _SetpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & self ) -> SetpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & mut self ) -> _SetpendW { _SetpendW { w : self } } } } # [ doc = "Interrupt Set-Pending Register" ] pub struct Ispr1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Pending Register" ] pub mod ispr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ispr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetpendR { bits : u32 , } impl SetpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetpendW < 'a > { w : & 'a mut W , } impl < 'a > _SetpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & self ) -> SetpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & mut self ) -> _SetpendW { _SetpendW { w : self } } } } # [ doc = "Interrupt Set-Pending Register" ] pub struct Ispr2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Set-Pending Register" ] pub mod ispr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ispr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct SetpendR { bits : u32 , } impl SetpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _SetpendW < 'a > { w : & 'a mut W , } impl < 'a > _SetpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & self ) -> SetpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; SetpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - SETPEND" ] # [ inline ( always ) ] pub fn setpend ( & mut self ) -> _SetpendW { _SetpendW { w : self } } } } # [ doc = "Interrupt Clear-Pending Register" ] pub struct Icpr0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Pending Register" ] pub mod icpr0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icpr0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrpendR { bits : u32 , } impl ClrpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrpendW < 'a > { w : & 'a mut W , } impl < 'a > _ClrpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & self ) -> ClrpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & mut self ) -> _ClrpendW { _ClrpendW { w : self } } } } # [ doc = "Interrupt Clear-Pending Register" ] pub struct Icpr1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Pending Register" ] pub mod icpr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icpr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrpendR { bits : u32 , } impl ClrpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrpendW < 'a > { w : & 'a mut W , } impl < 'a > _ClrpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & self ) -> ClrpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & mut self ) -> _ClrpendW { _ClrpendW { w : self } } } } # [ doc = "Interrupt Clear-Pending Register" ] pub struct Icpr2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Clear-Pending Register" ] pub mod icpr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Icpr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct ClrpendR { bits : u32 , } impl ClrpendR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } # [ doc = r" Proxy" ] pub struct _ClrpendW < 'a > { w : & 'a mut W , } impl < 'a > _ClrpendW < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u32 ) -> & 'a mut W { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & self ) -> ClrpendR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ClrpendR { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:31 - CLRPEND" ] # [ inline ( always ) ] pub fn clrpend ( & mut self ) -> _ClrpendW { _ClrpendW { w : self } } } } # [ doc = "Interrupt Active Bit Register" ] pub struct Iabr0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Active Bit Register" ] pub mod iabr0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Iabr0 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct ActiveR { bits : u32 , } impl ActiveR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - ACTIVE" ] # [ inline ( always ) ] pub fn active ( & self ) -> ActiveR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ActiveR { bits } } } } # [ doc = "Interrupt Active Bit Register" ] pub struct Iabr1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Active Bit Register" ] pub mod iabr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Iabr1 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct ActiveR { bits : u32 , } impl ActiveR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - ACTIVE" ] # [ inline ( always ) ] pub fn active ( & self ) -> ActiveR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ActiveR { bits } } } } # [ doc = "Interrupt Active Bit Register" ] pub struct Iabr2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Active Bit Register" ] pub mod iabr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } impl super :: Iabr2 { # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } } # [ doc = r" Value of the field" ] pub struct ActiveR { bits : u32 , } impl ActiveR { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:31 - ACTIVE" ] # [ inline ( always ) ] pub fn active ( & self ) -> ActiveR { let bits = { const MASK : u32 = 4294967295 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u32 } ; ActiveR { bits } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr0 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr0 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr0 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr1 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr1 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr1 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr2 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr2 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr2 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr3 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr3 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr3 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr4 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr4 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr4 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr5 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr5 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr5 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr6 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr6 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr6 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr7 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr7 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr7 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr8 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr8 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr8 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr9 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr9 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr9 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr10 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr10 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr10 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr11 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr11 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr11 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr12 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr12 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr12 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr13 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr13 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr13 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr14 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr14 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr14 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr15 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr15 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr15 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr16 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr16 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr16 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr17 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr17 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr17 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr18 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr18 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr18 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } # [ doc = "Interrupt Priority Register" ] pub struct Ipr19 { register : VolatileCell < u32 > } # [ doc = "Interrupt Priority Register" ] pub mod ipr19 { # [ doc = r" Value read from the register" ] pub struct R { bits : u32 , } # [ doc = r" Value to write to the register" ] pub struct W { bits : u32 , } impl super :: Ipr19 { # [ doc = r" Modifies the contents of the register" ] # [ inline ( always ) ] pub fn modify < F > ( & self , f : F ) where for < 'w > F : FnOnce ( & R , & 'w mut W ) -> & 'w mut W { let bits = self . register . get ( ) ; let r = R { bits : bits } ; let mut w = W { bits : bits } ; f ( & r , & mut w ) ; self . register . set ( w . bits ) ; } # [ doc = r" Reads the contents of the register" ] # [ inline ( always ) ] pub fn read ( & self ) -> R { R { bits : self . register . get ( ) } } # [ doc = r" Writes to the register" ] # [ inline ( always ) ] pub fn write < F > ( & self , f : F ) where F : FnOnce ( & mut W ) -> & mut W { let mut w = W :: reset_value ( ) ; f ( & mut w ) ; self . register . set ( w . bits ) ; } } # [ doc = r" Value of the field" ] pub struct IprN0R { bits : u8 , } impl IprN0R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN1R { bits : u8 , } impl IprN1R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN2R { bits : u8 , } impl IprN2R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Value of the field" ] pub struct IprN3R { bits : u8 , } impl IprN3R { # [ doc = r" Value of the field as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u8 { self . bits } } # [ doc = r" Proxy" ] pub struct _IprN0W < 'a > { w : & 'a mut W , } impl < 'a > _IprN0W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN1W < 'a > { w : & 'a mut W , } impl < 'a > _IprN1W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN2W < 'a > { w : & 'a mut W , } impl < 'a > _IprN2W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } # [ doc = r" Proxy" ] pub struct _IprN3W < 'a > { w : & 'a mut W , } impl < 'a > _IprN3W < 'a > { # [ doc = r" Writes raw bits to the field" ] # [ inline ( always ) ] pub unsafe fn bits ( self , bits : u8 ) -> & 'a mut W { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; self . w . bits &= ! ( ( MASK as u32 ) << OFFSET ) ; self . w . bits |= ( ( bits & MASK ) as u32 ) << OFFSET ; self . w } } impl R { # [ doc = r" Value of the register as raw bits" ] # [ inline ( always ) ] pub fn bits ( & self ) -> u32 { self . bits } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & self ) -> IprN0R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 0 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN0R { bits } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & self ) -> IprN1R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 8 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN1R { bits } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & self ) -> IprN2R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 16 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN2R { bits } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & self ) -> IprN3R { let bits = { const MASK : u8 = 255 ; const OFFSET : u8 = 24 ; ( ( self . bits >> OFFSET ) & MASK as u32 ) as u8 } ; IprN3R { bits } } } impl W { # [ doc = r" Reset value of the register" ] # [ inline ( always ) ] pub fn reset_value ( ) -> W { W { bits : 0 } } # [ doc = r" Writes raw bits to the register" ] # [ inline ( always ) ] pub unsafe fn bits ( & mut self , bits : u32 ) -> & mut Self { self . bits = bits ; self } # [ doc = "Bits 0:7 - IPR_N0" ] # [ inline ( always ) ] pub fn ipr_n0 ( & mut self ) -> _IprN0W { _IprN0W { w : self } } # [ doc = "Bits 8:15 - IPR_N1" ] # [ inline ( always ) ] pub fn ipr_n1 ( & mut self ) -> _IprN1W { _IprN1W { w : self } } # [ doc = "Bits 16:23 - IPR_N2" ] # [ inline ( always ) ] pub fn ipr_n2 ( & mut self ) -> _IprN2W { _IprN2W { w : self } } # [ doc = "Bits 24:31 - IPR_N3" ] # [ inline ( always ) ] pub fn ipr_n3 ( & mut self ) -> _IprN3W { _IprN3W { w : self } } } } } # [ doc = "Nested Vectored Interrupt Controller" ] pub struct Nvic { register_block : nvic :: RegisterBlock } impl Deref for Nvic { type Target = nvic :: RegisterBlock ; fn deref ( & self ) -> & nvic :: RegisterBlock { & self . register_block } }
+# ! [ doc = "Peripheral access API for STM32F40X microcontrollers (generated using svd2rust v0.7.0)" ] # ! [ deny ( missing_docs ) ] # ! [ deny ( warnings ) ] # ! [ feature ( const_fn ) ] # ! [ no_std ]extern crate cortex_m ;
+extern crate vcell ;
+use core::ops::Deref;
+use cortex_m::peripheral::Peripheral;
+# [ doc = r" Interrupts" ]
+pub mod interrupt {
+    use cortex_m::ctxt::Context;
+    use cortex_m::exception;
+    use cortex_m::interrupt::Nr;
+    # [ doc = "0 - Window Watchdog interrupt" ]
+    pub struct Wwdg {
+        _0: (),
+    }
+    unsafe impl Context for Wwdg {}
+    unsafe impl Nr for Wwdg {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            0
+        }
+    }
+    # [ doc = "1 - PVD through EXTI line detection interrupt" ]
+    pub struct Pvd {
+        _0: (),
+    }
+    unsafe impl Context for Pvd {}
+    unsafe impl Nr for Pvd {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            1
+        }
+    }
+    # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ]
+    pub struct TampStamp {
+        _0: (),
+    }
+    unsafe impl Context for TampStamp {}
+    unsafe impl Nr for TampStamp {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            2
+        }
+    }
+    # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ]
+    pub struct RtcWkup {
+        _0: (),
+    }
+    unsafe impl Context for RtcWkup {}
+    unsafe impl Nr for RtcWkup {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            3
+        }
+    }
+    # [ doc = "5 - RCC global interrupt" ]
+    pub struct Rcc {
+        _0: (),
+    }
+    unsafe impl Context for Rcc {}
+    unsafe impl Nr for Rcc {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            5
+        }
+    }
+    # [ doc = "6 - EXTI Line0 interrupt" ]
+    pub struct Exti0 {
+        _0: (),
+    }
+    unsafe impl Context for Exti0 {}
+    unsafe impl Nr for Exti0 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            6
+        }
+    }
+    # [ doc = "7 - EXTI Line1 interrupt" ]
+    pub struct Exti1 {
+        _0: (),
+    }
+    unsafe impl Context for Exti1 {}
+    unsafe impl Nr for Exti1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            7
+        }
+    }
+    # [ doc = "8 - EXTI Line2 interrupt" ]
+    pub struct Exti2 {
+        _0: (),
+    }
+    unsafe impl Context for Exti2 {}
+    unsafe impl Nr for Exti2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            8
+        }
+    }
+    # [ doc = "9 - EXTI Line3 interrupt" ]
+    pub struct Exti3 {
+        _0: (),
+    }
+    unsafe impl Context for Exti3 {}
+    unsafe impl Nr for Exti3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            9
+        }
+    }
+    # [ doc = "10 - EXTI Line4 interrupt" ]
+    pub struct Exti4 {
+        _0: (),
+    }
+    unsafe impl Context for Exti4 {}
+    unsafe impl Nr for Exti4 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            10
+        }
+    }
+    # [ doc = "11 - DMA1 Stream0 global interrupt" ]
+    pub struct Dma1Stream0 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream0 {}
+    unsafe impl Nr for Dma1Stream0 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            11
+        }
+    }
+    # [ doc = "12 - DMA1 Stream1 global interrupt" ]
+    pub struct Dma1Stream1 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream1 {}
+    unsafe impl Nr for Dma1Stream1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            12
+        }
+    }
+    # [ doc = "13 - DMA1 Stream2 global interrupt" ]
+    pub struct Dma1Stream2 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream2 {}
+    unsafe impl Nr for Dma1Stream2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            13
+        }
+    }
+    # [ doc = "14 - DMA1 Stream3 global interrupt" ]
+    pub struct Dma1Stream3 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream3 {}
+    unsafe impl Nr for Dma1Stream3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            14
+        }
+    }
+    # [ doc = "15 - DMA1 Stream4 global interrupt" ]
+    pub struct Dma1Stream4 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream4 {}
+    unsafe impl Nr for Dma1Stream4 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            15
+        }
+    }
+    # [ doc = "16 - DMA1 Stream5 global interrupt" ]
+    pub struct Dma1Stream5 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream5 {}
+    unsafe impl Nr for Dma1Stream5 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            16
+        }
+    }
+    # [ doc = "17 - DMA1 Stream6 global interrupt" ]
+    pub struct Dma1Stream6 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream6 {}
+    unsafe impl Nr for Dma1Stream6 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            17
+        }
+    }
+    # [ doc = "18 - ADC3 global interrupts" ]
+    pub struct Adc {
+        _0: (),
+    }
+    unsafe impl Context for Adc {}
+    unsafe impl Nr for Adc {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            18
+        }
+    }
+    # [ doc = "19 - CAN1 TX interrupts" ]
+    pub struct Can1Tx {
+        _0: (),
+    }
+    unsafe impl Context for Can1Tx {}
+    unsafe impl Nr for Can1Tx {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            19
+        }
+    }
+    # [ doc = "20 - CAN1 RX0 interrupts" ]
+    pub struct Can1Rx0 {
+        _0: (),
+    }
+    unsafe impl Context for Can1Rx0 {}
+    unsafe impl Nr for Can1Rx0 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            20
+        }
+    }
+    # [ doc = "21 - CAN1 RX1 interrupts" ]
+    pub struct Can1Rx1 {
+        _0: (),
+    }
+    unsafe impl Context for Can1Rx1 {}
+    unsafe impl Nr for Can1Rx1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            21
+        }
+    }
+    # [ doc = "22 - CAN1 SCE interrupt" ]
+    pub struct Can1Sce {
+        _0: (),
+    }
+    unsafe impl Context for Can1Sce {}
+    unsafe impl Nr for Can1Sce {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            22
+        }
+    }
+    # [ doc = "23 - EXTI Line[9:5] interrupts" ]
+    pub struct Exti95 {
+        _0: (),
+    }
+    unsafe impl Context for Exti95 {}
+    unsafe impl Nr for Exti95 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            23
+        }
+    }
+    # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ]
+    pub struct Tim1BrkTim9 {
+        _0: (),
+    }
+    unsafe impl Context for Tim1BrkTim9 {}
+    unsafe impl Nr for Tim1BrkTim9 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            24
+        }
+    }
+    # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ]
+    pub struct Tim1UpTim10 {
+        _0: (),
+    }
+    unsafe impl Context for Tim1UpTim10 {}
+    unsafe impl Nr for Tim1UpTim10 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            25
+        }
+    }
+    # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ]
+    pub struct Tim1TrgComTim11 {
+        _0: (),
+    }
+    unsafe impl Context for Tim1TrgComTim11 {}
+    unsafe impl Nr for Tim1TrgComTim11 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            26
+        }
+    }
+    # [ doc = "27 - TIM1 Capture Compare interrupt" ]
+    pub struct Tim1Cc {
+        _0: (),
+    }
+    unsafe impl Context for Tim1Cc {}
+    unsafe impl Nr for Tim1Cc {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            27
+        }
+    }
+    # [ doc = "28 - TIM2 global interrupt" ]
+    pub struct Tim2 {
+        _0: (),
+    }
+    unsafe impl Context for Tim2 {}
+    unsafe impl Nr for Tim2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            28
+        }
+    }
+    # [ doc = "29 - TIM3 global interrupt" ]
+    pub struct Tim3 {
+        _0: (),
+    }
+    unsafe impl Context for Tim3 {}
+    unsafe impl Nr for Tim3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            29
+        }
+    }
+    # [ doc = "30 - TIM4 global interrupt" ]
+    pub struct Tim4 {
+        _0: (),
+    }
+    unsafe impl Context for Tim4 {}
+    unsafe impl Nr for Tim4 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            30
+        }
+    }
+    # [ doc = "31 - I2C1 event interrupt" ]
+    pub struct I2c1Ev {
+        _0: (),
+    }
+    unsafe impl Context for I2c1Ev {}
+    unsafe impl Nr for I2c1Ev {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            31
+        }
+    }
+    # [ doc = "32 - I2C1 error interrupt" ]
+    pub struct I2c1Er {
+        _0: (),
+    }
+    unsafe impl Context for I2c1Er {}
+    unsafe impl Nr for I2c1Er {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            32
+        }
+    }
+    # [ doc = "33 - I2C2 event interrupt" ]
+    pub struct I2c2Ev {
+        _0: (),
+    }
+    unsafe impl Context for I2c2Ev {}
+    unsafe impl Nr for I2c2Ev {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            33
+        }
+    }
+    # [ doc = "34 - I2C2 error interrupt" ]
+    pub struct I2c2Er {
+        _0: (),
+    }
+    unsafe impl Context for I2c2Er {}
+    unsafe impl Nr for I2c2Er {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            34
+        }
+    }
+    # [ doc = "35 - SPI1 global interrupt" ]
+    pub struct Spi1 {
+        _0: (),
+    }
+    unsafe impl Context for Spi1 {}
+    unsafe impl Nr for Spi1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            35
+        }
+    }
+    # [ doc = "36 - SPI2 global interrupt" ]
+    pub struct Spi2 {
+        _0: (),
+    }
+    unsafe impl Context for Spi2 {}
+    unsafe impl Nr for Spi2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            36
+        }
+    }
+    # [ doc = "37 - USART1 global interrupt" ]
+    pub struct Usart1 {
+        _0: (),
+    }
+    unsafe impl Context for Usart1 {}
+    unsafe impl Nr for Usart1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            37
+        }
+    }
+    # [ doc = "38 - USART2 global interrupt" ]
+    pub struct Usart2 {
+        _0: (),
+    }
+    unsafe impl Context for Usart2 {}
+    unsafe impl Nr for Usart2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            38
+        }
+    }
+    # [ doc = "39 - USART3 global interrupt" ]
+    pub struct Usart3 {
+        _0: (),
+    }
+    unsafe impl Context for Usart3 {}
+    unsafe impl Nr for Usart3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            39
+        }
+    }
+    # [ doc = "40 - EXTI Line[15:10] interrupts" ]
+    pub struct Exti1510 {
+        _0: (),
+    }
+    unsafe impl Context for Exti1510 {}
+    unsafe impl Nr for Exti1510 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            40
+        }
+    }
+    # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ]
+    pub struct RtcAlarm {
+        _0: (),
+    }
+    unsafe impl Context for RtcAlarm {}
+    unsafe impl Nr for RtcAlarm {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            41
+        }
+    }
+    # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ]
+    pub struct OtgFsWkup {
+        _0: (),
+    }
+    unsafe impl Context for OtgFsWkup {}
+    unsafe impl Nr for OtgFsWkup {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            42
+        }
+    }
+    # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ]
+    pub struct Tim8BrkTim12 {
+        _0: (),
+    }
+    unsafe impl Context for Tim8BrkTim12 {}
+    unsafe impl Nr for Tim8BrkTim12 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            43
+        }
+    }
+    # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ]
+    pub struct Tim8UpTim13 {
+        _0: (),
+    }
+    unsafe impl Context for Tim8UpTim13 {}
+    unsafe impl Nr for Tim8UpTim13 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            44
+        }
+    }
+    # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ]
+    pub struct Tim8TrgComTim14 {
+        _0: (),
+    }
+    unsafe impl Context for Tim8TrgComTim14 {}
+    unsafe impl Nr for Tim8TrgComTim14 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            45
+        }
+    }
+    # [ doc = "46 - TIM8 Capture Compare interrupt" ]
+    pub struct Tim8Cc {
+        _0: (),
+    }
+    unsafe impl Context for Tim8Cc {}
+    unsafe impl Nr for Tim8Cc {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            46
+        }
+    }
+    # [ doc = "47 - DMA1 Stream7 global interrupt" ]
+    pub struct Dma1Stream7 {
+        _0: (),
+    }
+    unsafe impl Context for Dma1Stream7 {}
+    unsafe impl Nr for Dma1Stream7 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            47
+        }
+    }
+    # [ doc = "48 - FSMC global interrupt" ]
+    pub struct Fsmc {
+        _0: (),
+    }
+    unsafe impl Context for Fsmc {}
+    unsafe impl Nr for Fsmc {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            48
+        }
+    }
+    # [ doc = "49 - SDIO global interrupt" ]
+    pub struct Sdio {
+        _0: (),
+    }
+    unsafe impl Context for Sdio {}
+    unsafe impl Nr for Sdio {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            49
+        }
+    }
+    # [ doc = "50 - TIM5 global interrupt" ]
+    pub struct Tim5 {
+        _0: (),
+    }
+    unsafe impl Context for Tim5 {}
+    unsafe impl Nr for Tim5 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            50
+        }
+    }
+    # [ doc = "51 - SPI3 global interrupt" ]
+    pub struct Spi3 {
+        _0: (),
+    }
+    unsafe impl Context for Spi3 {}
+    unsafe impl Nr for Spi3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            51
+        }
+    }
+    # [ doc = "52 - UART4 global interrupt" ]
+    pub struct Uart4 {
+        _0: (),
+    }
+    unsafe impl Context for Uart4 {}
+    unsafe impl Nr for Uart4 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            52
+        }
+    }
+    # [ doc = "53 - UART5 global interrupt" ]
+    pub struct Uart5 {
+        _0: (),
+    }
+    unsafe impl Context for Uart5 {}
+    unsafe impl Nr for Uart5 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            53
+        }
+    }
+    # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ]
+    pub struct Tim6Dac {
+        _0: (),
+    }
+    unsafe impl Context for Tim6Dac {}
+    unsafe impl Nr for Tim6Dac {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            54
+        }
+    }
+    # [ doc = "55 - TIM7 global interrupt" ]
+    pub struct Tim7 {
+        _0: (),
+    }
+    unsafe impl Context for Tim7 {}
+    unsafe impl Nr for Tim7 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            55
+        }
+    }
+    # [ doc = "56 - DMA2 Stream0 global interrupt" ]
+    pub struct Dma2Stream0 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream0 {}
+    unsafe impl Nr for Dma2Stream0 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            56
+        }
+    }
+    # [ doc = "57 - DMA2 Stream1 global interrupt" ]
+    pub struct Dma2Stream1 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream1 {}
+    unsafe impl Nr for Dma2Stream1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            57
+        }
+    }
+    # [ doc = "58 - DMA2 Stream2 global interrupt" ]
+    pub struct Dma2Stream2 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream2 {}
+    unsafe impl Nr for Dma2Stream2 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            58
+        }
+    }
+    # [ doc = "59 - DMA2 Stream3 global interrupt" ]
+    pub struct Dma2Stream3 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream3 {}
+    unsafe impl Nr for Dma2Stream3 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            59
+        }
+    }
+    # [ doc = "60 - DMA2 Stream4 global interrupt" ]
+    pub struct Dma2Stream4 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream4 {}
+    unsafe impl Nr for Dma2Stream4 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            60
+        }
+    }
+    # [ doc = "61 - Ethernet global interrupt" ]
+    pub struct Eth {
+        _0: (),
+    }
+    unsafe impl Context for Eth {}
+    unsafe impl Nr for Eth {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            61
+        }
+    }
+    # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ]
+    pub struct EthWkup {
+        _0: (),
+    }
+    unsafe impl Context for EthWkup {}
+    unsafe impl Nr for EthWkup {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            62
+        }
+    }
+    # [ doc = "63 - CAN2 TX interrupts" ]
+    pub struct Can2Tx {
+        _0: (),
+    }
+    unsafe impl Context for Can2Tx {}
+    unsafe impl Nr for Can2Tx {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            63
+        }
+    }
+    # [ doc = "64 - CAN2 RX0 interrupts" ]
+    pub struct Can2Rx0 {
+        _0: (),
+    }
+    unsafe impl Context for Can2Rx0 {}
+    unsafe impl Nr for Can2Rx0 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            64
+        }
+    }
+    # [ doc = "65 - CAN2 RX1 interrupts" ]
+    pub struct Can2Rx1 {
+        _0: (),
+    }
+    unsafe impl Context for Can2Rx1 {}
+    unsafe impl Nr for Can2Rx1 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            65
+        }
+    }
+    # [ doc = "66 - CAN2 SCE interrupt" ]
+    pub struct Can2Sce {
+        _0: (),
+    }
+    unsafe impl Context for Can2Sce {}
+    unsafe impl Nr for Can2Sce {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            66
+        }
+    }
+    # [ doc = "67 - USB On The Go FS global interrupt" ]
+    pub struct OtgFs {
+        _0: (),
+    }
+    unsafe impl Context for OtgFs {}
+    unsafe impl Nr for OtgFs {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            67
+        }
+    }
+    # [ doc = "68 - DMA2 Stream5 global interrupt" ]
+    pub struct Dma2Stream5 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream5 {}
+    unsafe impl Nr for Dma2Stream5 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            68
+        }
+    }
+    # [ doc = "69 - DMA2 Stream6 global interrupt" ]
+    pub struct Dma2Stream6 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream6 {}
+    unsafe impl Nr for Dma2Stream6 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            69
+        }
+    }
+    # [ doc = "70 - DMA2 Stream7 global interrupt" ]
+    pub struct Dma2Stream7 {
+        _0: (),
+    }
+    unsafe impl Context for Dma2Stream7 {}
+    unsafe impl Nr for Dma2Stream7 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            70
+        }
+    }
+    # [ doc = "71 - USART6 global interrupt" ]
+    pub struct Usart6 {
+        _0: (),
+    }
+    unsafe impl Context for Usart6 {}
+    unsafe impl Nr for Usart6 {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            71
+        }
+    }
+    # [ doc = "72 - I2C3 event interrupt" ]
+    pub struct I2c3Ev {
+        _0: (),
+    }
+    unsafe impl Context for I2c3Ev {}
+    unsafe impl Nr for I2c3Ev {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            72
+        }
+    }
+    # [ doc = "73 - I2C3 error interrupt" ]
+    pub struct I2c3Er {
+        _0: (),
+    }
+    unsafe impl Context for I2c3Er {}
+    unsafe impl Nr for I2c3Er {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            73
+        }
+    }
+    # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ]
+    pub struct OtgHsEp1Out {
+        _0: (),
+    }
+    unsafe impl Context for OtgHsEp1Out {}
+    unsafe impl Nr for OtgHsEp1Out {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            74
+        }
+    }
+    # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ]
+    pub struct OtgHsEp1In {
+        _0: (),
+    }
+    unsafe impl Context for OtgHsEp1In {}
+    unsafe impl Nr for OtgHsEp1In {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            75
+        }
+    }
+    # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ]
+    pub struct OtgHsWkup {
+        _0: (),
+    }
+    unsafe impl Context for OtgHsWkup {}
+    unsafe impl Nr for OtgHsWkup {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            76
+        }
+    }
+    # [ doc = "77 - USB On The Go HS global interrupt" ]
+    pub struct OtgHs {
+        _0: (),
+    }
+    unsafe impl Context for OtgHs {}
+    unsafe impl Nr for OtgHs {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            77
+        }
+    }
+    # [ doc = "78 - DCMI global interrupt" ]
+    pub struct Dcmi {
+        _0: (),
+    }
+    unsafe impl Context for Dcmi {}
+    unsafe impl Nr for Dcmi {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            78
+        }
+    }
+    # [ doc = "81 - FPU interrupt" ]
+    pub struct Fpu {
+        _0: (),
+    }
+    unsafe impl Context for Fpu {}
+    unsafe impl Nr for Fpu {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            81
+        }
+    }
+    use cortex_m::Reserved;
+    # [ doc = r" Interrupt handlers" ]
+    # [ allow ( non_snake_case ) ]
+    # [ repr ( C ) ]
+    pub struct Handlers {
+        # [ doc = "0 - Window Watchdog interrupt" ]
+        pub Wwdg: extern "C" fn(Wwdg),
+        # [ doc = "1 - PVD through EXTI line detection interrupt" ]
+        pub Pvd: extern "C" fn(Pvd),
+        # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ]
+        pub TampStamp: extern "C" fn(TampStamp),
+        # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ]
+        pub RtcWkup: extern "C" fn(RtcWkup),
+        # [ doc = r" Reserved spot in the vector table" ]
+        pub _reserved0: [Reserved; 1],
+        # [ doc = "5 - RCC global interrupt" ]
+        pub Rcc: extern "C" fn(Rcc),
+        # [ doc = "6 - EXTI Line0 interrupt" ]
+        pub Exti0: extern "C" fn(Exti0),
+        # [ doc = "7 - EXTI Line1 interrupt" ]
+        pub Exti1: extern "C" fn(Exti1),
+        # [ doc = "8 - EXTI Line2 interrupt" ]
+        pub Exti2: extern "C" fn(Exti2),
+        # [ doc = "9 - EXTI Line3 interrupt" ]
+        pub Exti3: extern "C" fn(Exti3),
+        # [ doc = "10 - EXTI Line4 interrupt" ]
+        pub Exti4: extern "C" fn(Exti4),
+        # [ doc = "11 - DMA1 Stream0 global interrupt" ]
+        pub Dma1Stream0: extern "C" fn(Dma1Stream0),
+        # [ doc = "12 - DMA1 Stream1 global interrupt" ]
+        pub Dma1Stream1: extern "C" fn(Dma1Stream1),
+        # [ doc = "13 - DMA1 Stream2 global interrupt" ]
+        pub Dma1Stream2: extern "C" fn(Dma1Stream2),
+        # [ doc = "14 - DMA1 Stream3 global interrupt" ]
+        pub Dma1Stream3: extern "C" fn(Dma1Stream3),
+        # [ doc = "15 - DMA1 Stream4 global interrupt" ]
+        pub Dma1Stream4: extern "C" fn(Dma1Stream4),
+        # [ doc = "16 - DMA1 Stream5 global interrupt" ]
+        pub Dma1Stream5: extern "C" fn(Dma1Stream5),
+        # [ doc = "17 - DMA1 Stream6 global interrupt" ]
+        pub Dma1Stream6: extern "C" fn(Dma1Stream6),
+        # [ doc = "18 - ADC3 global interrupts" ]
+        pub Adc: extern "C" fn(Adc),
+        # [ doc = "19 - CAN1 TX interrupts" ]
+        pub Can1Tx: extern "C" fn(Can1Tx),
+        # [ doc = "20 - CAN1 RX0 interrupts" ]
+        pub Can1Rx0: extern "C" fn(Can1Rx0),
+        # [ doc = "21 - CAN1 RX1 interrupts" ]
+        pub Can1Rx1: extern "C" fn(Can1Rx1),
+        # [ doc = "22 - CAN1 SCE interrupt" ]
+        pub Can1Sce: extern "C" fn(Can1Sce),
+        # [ doc = "23 - EXTI Line[9:5] interrupts" ]
+        pub Exti95: extern "C" fn(Exti95),
+        # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ]
+        pub Tim1BrkTim9: extern "C" fn(Tim1BrkTim9),
+        # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ]
+        pub Tim1UpTim10: extern "C" fn(Tim1UpTim10),
+        # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ]
+        pub Tim1TrgComTim11: extern "C" fn(Tim1TrgComTim11),
+        # [ doc = "27 - TIM1 Capture Compare interrupt" ]
+        pub Tim1Cc: extern "C" fn(Tim1Cc),
+        # [ doc = "28 - TIM2 global interrupt" ]
+        pub Tim2: extern "C" fn(Tim2),
+        # [ doc = "29 - TIM3 global interrupt" ]
+        pub Tim3: extern "C" fn(Tim3),
+        # [ doc = "30 - TIM4 global interrupt" ]
+        pub Tim4: extern "C" fn(Tim4),
+        # [ doc = "31 - I2C1 event interrupt" ]
+        pub I2c1Ev: extern "C" fn(I2c1Ev),
+        # [ doc = "32 - I2C1 error interrupt" ]
+        pub I2c1Er: extern "C" fn(I2c1Er),
+        # [ doc = "33 - I2C2 event interrupt" ]
+        pub I2c2Ev: extern "C" fn(I2c2Ev),
+        # [ doc = "34 - I2C2 error interrupt" ]
+        pub I2c2Er: extern "C" fn(I2c2Er),
+        # [ doc = "35 - SPI1 global interrupt" ]
+        pub Spi1: extern "C" fn(Spi1),
+        # [ doc = "36 - SPI2 global interrupt" ]
+        pub Spi2: extern "C" fn(Spi2),
+        # [ doc = "37 - USART1 global interrupt" ]
+        pub Usart1: extern "C" fn(Usart1),
+        # [ doc = "38 - USART2 global interrupt" ]
+        pub Usart2: extern "C" fn(Usart2),
+        # [ doc = "39 - USART3 global interrupt" ]
+        pub Usart3: extern "C" fn(Usart3),
+        # [ doc = "40 - EXTI Line[15:10] interrupts" ]
+        pub Exti1510: extern "C" fn(Exti1510),
+        # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ]
+        pub RtcAlarm: extern "C" fn(RtcAlarm),
+        # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ]
+        pub OtgFsWkup: extern "C" fn(OtgFsWkup),
+        # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ]
+        pub Tim8BrkTim12: extern "C" fn(Tim8BrkTim12),
+        # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ]
+        pub Tim8UpTim13: extern "C" fn(Tim8UpTim13),
+        # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ]
+        pub Tim8TrgComTim14: extern "C" fn(Tim8TrgComTim14),
+        # [ doc = "46 - TIM8 Capture Compare interrupt" ]
+        pub Tim8Cc: extern "C" fn(Tim8Cc),
+        # [ doc = "47 - DMA1 Stream7 global interrupt" ]
+        pub Dma1Stream7: extern "C" fn(Dma1Stream7),
+        # [ doc = "48 - FSMC global interrupt" ]
+        pub Fsmc: extern "C" fn(Fsmc),
+        # [ doc = "49 - SDIO global interrupt" ]
+        pub Sdio: extern "C" fn(Sdio),
+        # [ doc = "50 - TIM5 global interrupt" ]
+        pub Tim5: extern "C" fn(Tim5),
+        # [ doc = "51 - SPI3 global interrupt" ]
+        pub Spi3: extern "C" fn(Spi3),
+        # [ doc = "52 - UART4 global interrupt" ]
+        pub Uart4: extern "C" fn(Uart4),
+        # [ doc = "53 - UART5 global interrupt" ]
+        pub Uart5: extern "C" fn(Uart5),
+        # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ]
+        pub Tim6Dac: extern "C" fn(Tim6Dac),
+        # [ doc = "55 - TIM7 global interrupt" ]
+        pub Tim7: extern "C" fn(Tim7),
+        # [ doc = "56 - DMA2 Stream0 global interrupt" ]
+        pub Dma2Stream0: extern "C" fn(Dma2Stream0),
+        # [ doc = "57 - DMA2 Stream1 global interrupt" ]
+        pub Dma2Stream1: extern "C" fn(Dma2Stream1),
+        # [ doc = "58 - DMA2 Stream2 global interrupt" ]
+        pub Dma2Stream2: extern "C" fn(Dma2Stream2),
+        # [ doc = "59 - DMA2 Stream3 global interrupt" ]
+        pub Dma2Stream3: extern "C" fn(Dma2Stream3),
+        # [ doc = "60 - DMA2 Stream4 global interrupt" ]
+        pub Dma2Stream4: extern "C" fn(Dma2Stream4),
+        # [ doc = "61 - Ethernet global interrupt" ]
+        pub Eth: extern "C" fn(Eth),
+        # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ]
+        pub EthWkup: extern "C" fn(EthWkup),
+        # [ doc = "63 - CAN2 TX interrupts" ]
+        pub Can2Tx: extern "C" fn(Can2Tx),
+        # [ doc = "64 - CAN2 RX0 interrupts" ]
+        pub Can2Rx0: extern "C" fn(Can2Rx0),
+        # [ doc = "65 - CAN2 RX1 interrupts" ]
+        pub Can2Rx1: extern "C" fn(Can2Rx1),
+        # [ doc = "66 - CAN2 SCE interrupt" ]
+        pub Can2Sce: extern "C" fn(Can2Sce),
+        # [ doc = "67 - USB On The Go FS global interrupt" ]
+        pub OtgFs: extern "C" fn(OtgFs),
+        # [ doc = "68 - DMA2 Stream5 global interrupt" ]
+        pub Dma2Stream5: extern "C" fn(Dma2Stream5),
+        # [ doc = "69 - DMA2 Stream6 global interrupt" ]
+        pub Dma2Stream6: extern "C" fn(Dma2Stream6),
+        # [ doc = "70 - DMA2 Stream7 global interrupt" ]
+        pub Dma2Stream7: extern "C" fn(Dma2Stream7),
+        # [ doc = "71 - USART6 global interrupt" ]
+        pub Usart6: extern "C" fn(Usart6),
+        # [ doc = "72 - I2C3 event interrupt" ]
+        pub I2c3Ev: extern "C" fn(I2c3Ev),
+        # [ doc = "73 - I2C3 error interrupt" ]
+        pub I2c3Er: extern "C" fn(I2c3Er),
+        # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ]
+        pub OtgHsEp1Out: extern "C" fn(OtgHsEp1Out),
+        # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ]
+        pub OtgHsEp1In: extern "C" fn(OtgHsEp1In),
+        # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ]
+        pub OtgHsWkup: extern "C" fn(OtgHsWkup),
+        # [ doc = "77 - USB On The Go HS global interrupt" ]
+        pub OtgHs: extern "C" fn(OtgHs),
+        # [ doc = "78 - DCMI global interrupt" ]
+        pub Dcmi: extern "C" fn(Dcmi),
+        # [ doc = r" Reserved spot in the vector table" ]
+        pub _reserved1: [Reserved; 2],
+        # [ doc = "81 - FPU interrupt" ]
+        pub Fpu: extern "C" fn(Fpu),
+    }
+    # [ doc = r" Default interrupt handlers" ]
+    pub const DEFAULT_HANDLERS: Handlers = Handlers {
+        Wwdg: exception::default_handler,
+        Pvd: exception::default_handler,
+        TampStamp: exception::default_handler,
+        RtcWkup: exception::default_handler,
+        _reserved0: [Reserved::Vector; 1],
+        Rcc: exception::default_handler,
+        Exti0: exception::default_handler,
+        Exti1: exception::default_handler,
+        Exti2: exception::default_handler,
+        Exti3: exception::default_handler,
+        Exti4: exception::default_handler,
+        Dma1Stream0: exception::default_handler,
+        Dma1Stream1: exception::default_handler,
+        Dma1Stream2: exception::default_handler,
+        Dma1Stream3: exception::default_handler,
+        Dma1Stream4: exception::default_handler,
+        Dma1Stream5: exception::default_handler,
+        Dma1Stream6: exception::default_handler,
+        Adc: exception::default_handler,
+        Can1Tx: exception::default_handler,
+        Can1Rx0: exception::default_handler,
+        Can1Rx1: exception::default_handler,
+        Can1Sce: exception::default_handler,
+        Exti95: exception::default_handler,
+        Tim1BrkTim9: exception::default_handler,
+        Tim1UpTim10: exception::default_handler,
+        Tim1TrgComTim11: exception::default_handler,
+        Tim1Cc: exception::default_handler,
+        Tim2: exception::default_handler,
+        Tim3: exception::default_handler,
+        Tim4: exception::default_handler,
+        I2c1Ev: exception::default_handler,
+        I2c1Er: exception::default_handler,
+        I2c2Ev: exception::default_handler,
+        I2c2Er: exception::default_handler,
+        Spi1: exception::default_handler,
+        Spi2: exception::default_handler,
+        Usart1: exception::default_handler,
+        Usart2: exception::default_handler,
+        Usart3: exception::default_handler,
+        Exti1510: exception::default_handler,
+        RtcAlarm: exception::default_handler,
+        OtgFsWkup: exception::default_handler,
+        Tim8BrkTim12: exception::default_handler,
+        Tim8UpTim13: exception::default_handler,
+        Tim8TrgComTim14: exception::default_handler,
+        Tim8Cc: exception::default_handler,
+        Dma1Stream7: exception::default_handler,
+        Fsmc: exception::default_handler,
+        Sdio: exception::default_handler,
+        Tim5: exception::default_handler,
+        Spi3: exception::default_handler,
+        Uart4: exception::default_handler,
+        Uart5: exception::default_handler,
+        Tim6Dac: exception::default_handler,
+        Tim7: exception::default_handler,
+        Dma2Stream0: exception::default_handler,
+        Dma2Stream1: exception::default_handler,
+        Dma2Stream2: exception::default_handler,
+        Dma2Stream3: exception::default_handler,
+        Dma2Stream4: exception::default_handler,
+        Eth: exception::default_handler,
+        EthWkup: exception::default_handler,
+        Can2Tx: exception::default_handler,
+        Can2Rx0: exception::default_handler,
+        Can2Rx1: exception::default_handler,
+        Can2Sce: exception::default_handler,
+        OtgFs: exception::default_handler,
+        Dma2Stream5: exception::default_handler,
+        Dma2Stream6: exception::default_handler,
+        Dma2Stream7: exception::default_handler,
+        Usart6: exception::default_handler,
+        I2c3Ev: exception::default_handler,
+        I2c3Er: exception::default_handler,
+        OtgHsEp1Out: exception::default_handler,
+        OtgHsEp1In: exception::default_handler,
+        OtgHsWkup: exception::default_handler,
+        OtgHs: exception::default_handler,
+        Dcmi: exception::default_handler,
+        _reserved1: [Reserved::Vector; 2],
+        Fpu: exception::default_handler,
+    };
+    # [ doc = r" Enumeration of all the interrupts" ]
+    pub enum Interrupt {
+        # [ doc = "0 - Window Watchdog interrupt" ]
+        Wwdg,
+        # [ doc = "1 - PVD through EXTI line detection interrupt" ]
+        Pvd,
+        # [ doc = "2 - Tamper and TimeStamp interrupts through the EXTI line" ]
+        TampStamp,
+        # [ doc = "3 - RTC Wakeup interrupt through the EXTI line" ]
+        RtcWkup,
+        # [ doc = "5 - RCC global interrupt" ]
+        Rcc,
+        # [ doc = "6 - EXTI Line0 interrupt" ]
+        Exti0,
+        # [ doc = "7 - EXTI Line1 interrupt" ]
+        Exti1,
+        # [ doc = "8 - EXTI Line2 interrupt" ]
+        Exti2,
+        # [ doc = "9 - EXTI Line3 interrupt" ]
+        Exti3,
+        # [ doc = "10 - EXTI Line4 interrupt" ]
+        Exti4,
+        # [ doc = "11 - DMA1 Stream0 global interrupt" ]
+        Dma1Stream0,
+        # [ doc = "12 - DMA1 Stream1 global interrupt" ]
+        Dma1Stream1,
+        # [ doc = "13 - DMA1 Stream2 global interrupt" ]
+        Dma1Stream2,
+        # [ doc = "14 - DMA1 Stream3 global interrupt" ]
+        Dma1Stream3,
+        # [ doc = "15 - DMA1 Stream4 global interrupt" ]
+        Dma1Stream4,
+        # [ doc = "16 - DMA1 Stream5 global interrupt" ]
+        Dma1Stream5,
+        # [ doc = "17 - DMA1 Stream6 global interrupt" ]
+        Dma1Stream6,
+        # [ doc = "18 - ADC3 global interrupts" ]
+        Adc,
+        # [ doc = "19 - CAN1 TX interrupts" ]
+        Can1Tx,
+        # [ doc = "20 - CAN1 RX0 interrupts" ]
+        Can1Rx0,
+        # [ doc = "21 - CAN1 RX1 interrupts" ]
+        Can1Rx1,
+        # [ doc = "22 - CAN1 SCE interrupt" ]
+        Can1Sce,
+        # [ doc = "23 - EXTI Line[9:5] interrupts" ]
+        Exti95,
+        # [ doc = "24 - TIM1 Break interrupt and TIM9 global interrupt" ]
+        Tim1BrkTim9,
+        # [ doc = "25 - TIM1 Update interrupt and TIM10 global interrupt" ]
+        Tim1UpTim10,
+        # [ doc = "26 - TIM1 Trigger and Commutation interrupts and TIM11 global interrupt" ]
+        Tim1TrgComTim11,
+        # [ doc = "27 - TIM1 Capture Compare interrupt" ]
+        Tim1Cc,
+        # [ doc = "28 - TIM2 global interrupt" ]
+        Tim2,
+        # [ doc = "29 - TIM3 global interrupt" ]
+        Tim3,
+        # [ doc = "30 - TIM4 global interrupt" ]
+        Tim4,
+        # [ doc = "31 - I2C1 event interrupt" ]
+        I2c1Ev,
+        # [ doc = "32 - I2C1 error interrupt" ]
+        I2c1Er,
+        # [ doc = "33 - I2C2 event interrupt" ]
+        I2c2Ev,
+        # [ doc = "34 - I2C2 error interrupt" ]
+        I2c2Er,
+        # [ doc = "35 - SPI1 global interrupt" ]
+        Spi1,
+        # [ doc = "36 - SPI2 global interrupt" ]
+        Spi2,
+        # [ doc = "37 - USART1 global interrupt" ]
+        Usart1,
+        # [ doc = "38 - USART2 global interrupt" ]
+        Usart2,
+        # [ doc = "39 - USART3 global interrupt" ]
+        Usart3,
+        # [ doc = "40 - EXTI Line[15:10] interrupts" ]
+        Exti1510,
+        # [ doc = "41 - RTC Alarms (A and B) through EXTI line interrupt" ]
+        RtcAlarm,
+        # [ doc = "42 - USB On-The-Go FS Wakeup through EXTI line interrupt" ]
+        OtgFsWkup,
+        # [ doc = "43 - TIM8 Break interrupt and TIM12 global interrupt" ]
+        Tim8BrkTim12,
+        # [ doc = "44 - TIM8 Update interrupt and TIM13 global interrupt" ]
+        Tim8UpTim13,
+        # [ doc = "45 - TIM8 Trigger and Commutation interrupts and TIM14 global interrupt" ]
+        Tim8TrgComTim14,
+        # [ doc = "46 - TIM8 Capture Compare interrupt" ]
+        Tim8Cc,
+        # [ doc = "47 - DMA1 Stream7 global interrupt" ]
+        Dma1Stream7,
+        # [ doc = "48 - FSMC global interrupt" ]
+        Fsmc,
+        # [ doc = "49 - SDIO global interrupt" ]
+        Sdio,
+        # [ doc = "50 - TIM5 global interrupt" ]
+        Tim5,
+        # [ doc = "51 - SPI3 global interrupt" ]
+        Spi3,
+        # [ doc = "52 - UART4 global interrupt" ]
+        Uart4,
+        # [ doc = "53 - UART5 global interrupt" ]
+        Uart5,
+        # [ doc = "54 - TIM6 global interrupt, DAC1 and DAC2 underrun error interrupt" ]
+        Tim6Dac,
+        # [ doc = "55 - TIM7 global interrupt" ]
+        Tim7,
+        # [ doc = "56 - DMA2 Stream0 global interrupt" ]
+        Dma2Stream0,
+        # [ doc = "57 - DMA2 Stream1 global interrupt" ]
+        Dma2Stream1,
+        # [ doc = "58 - DMA2 Stream2 global interrupt" ]
+        Dma2Stream2,
+        # [ doc = "59 - DMA2 Stream3 global interrupt" ]
+        Dma2Stream3,
+        # [ doc = "60 - DMA2 Stream4 global interrupt" ]
+        Dma2Stream4,
+        # [ doc = "61 - Ethernet global interrupt" ]
+        Eth,
+        # [ doc = "62 - Ethernet Wakeup through EXTI line interrupt" ]
+        EthWkup,
+        # [ doc = "63 - CAN2 TX interrupts" ]
+        Can2Tx,
+        # [ doc = "64 - CAN2 RX0 interrupts" ]
+        Can2Rx0,
+        # [ doc = "65 - CAN2 RX1 interrupts" ]
+        Can2Rx1,
+        # [ doc = "66 - CAN2 SCE interrupt" ]
+        Can2Sce,
+        # [ doc = "67 - USB On The Go FS global interrupt" ]
+        OtgFs,
+        # [ doc = "68 - DMA2 Stream5 global interrupt" ]
+        Dma2Stream5,
+        # [ doc = "69 - DMA2 Stream6 global interrupt" ]
+        Dma2Stream6,
+        # [ doc = "70 - DMA2 Stream7 global interrupt" ]
+        Dma2Stream7,
+        # [ doc = "71 - USART6 global interrupt" ]
+        Usart6,
+        # [ doc = "72 - I2C3 event interrupt" ]
+        I2c3Ev,
+        # [ doc = "73 - I2C3 error interrupt" ]
+        I2c3Er,
+        # [ doc = "74 - USB On The Go HS End Point 1 Out global interrupt" ]
+        OtgHsEp1Out,
+        # [ doc = "75 - USB On The Go HS End Point 1 In global interrupt" ]
+        OtgHsEp1In,
+        # [ doc = "76 - USB On The Go HS Wakeup through EXTI interrupt" ]
+        OtgHsWkup,
+        # [ doc = "77 - USB On The Go HS global interrupt" ]
+        OtgHs,
+        # [ doc = "78 - DCMI global interrupt" ]
+        Dcmi,
+        # [ doc = "81 - FPU interrupt" ]
+        Fpu,
+    }
+    unsafe impl Nr for Interrupt {
+        # [ inline ( always ) ]
+        fn nr(&self) -> u8 {
+            match *self {
+                Interrupt::Wwdg => 0,
+                Interrupt::Pvd => 1,
+                Interrupt::TampStamp => 2,
+                Interrupt::RtcWkup => 3,
+                Interrupt::Rcc => 5,
+                Interrupt::Exti0 => 6,
+                Interrupt::Exti1 => 7,
+                Interrupt::Exti2 => 8,
+                Interrupt::Exti3 => 9,
+                Interrupt::Exti4 => 10,
+                Interrupt::Dma1Stream0 => 11,
+                Interrupt::Dma1Stream1 => 12,
+                Interrupt::Dma1Stream2 => 13,
+                Interrupt::Dma1Stream3 => 14,
+                Interrupt::Dma1Stream4 => 15,
+                Interrupt::Dma1Stream5 => 16,
+                Interrupt::Dma1Stream6 => 17,
+                Interrupt::Adc => 18,
+                Interrupt::Can1Tx => 19,
+                Interrupt::Can1Rx0 => 20,
+                Interrupt::Can1Rx1 => 21,
+                Interrupt::Can1Sce => 22,
+                Interrupt::Exti95 => 23,
+                Interrupt::Tim1BrkTim9 => 24,
+                Interrupt::Tim1UpTim10 => 25,
+                Interrupt::Tim1TrgComTim11 => 26,
+                Interrupt::Tim1Cc => 27,
+                Interrupt::Tim2 => 28,
+                Interrupt::Tim3 => 29,
+                Interrupt::Tim4 => 30,
+                Interrupt::I2c1Ev => 31,
+                Interrupt::I2c1Er => 32,
+                Interrupt::I2c2Ev => 33,
+                Interrupt::I2c2Er => 34,
+                Interrupt::Spi1 => 35,
+                Interrupt::Spi2 => 36,
+                Interrupt::Usart1 => 37,
+                Interrupt::Usart2 => 38,
+                Interrupt::Usart3 => 39,
+                Interrupt::Exti1510 => 40,
+                Interrupt::RtcAlarm => 41,
+                Interrupt::OtgFsWkup => 42,
+                Interrupt::Tim8BrkTim12 => 43,
+                Interrupt::Tim8UpTim13 => 44,
+                Interrupt::Tim8TrgComTim14 => 45,
+                Interrupt::Tim8Cc => 46,
+                Interrupt::Dma1Stream7 => 47,
+                Interrupt::Fsmc => 48,
+                Interrupt::Sdio => 49,
+                Interrupt::Tim5 => 50,
+                Interrupt::Spi3 => 51,
+                Interrupt::Uart4 => 52,
+                Interrupt::Uart5 => 53,
+                Interrupt::Tim6Dac => 54,
+                Interrupt::Tim7 => 55,
+                Interrupt::Dma2Stream0 => 56,
+                Interrupt::Dma2Stream1 => 57,
+                Interrupt::Dma2Stream2 => 58,
+                Interrupt::Dma2Stream3 => 59,
+                Interrupt::Dma2Stream4 => 60,
+                Interrupt::Eth => 61,
+                Interrupt::EthWkup => 62,
+                Interrupt::Can2Tx => 63,
+                Interrupt::Can2Rx0 => 64,
+                Interrupt::Can2Rx1 => 65,
+                Interrupt::Can2Sce => 66,
+                Interrupt::OtgFs => 67,
+                Interrupt::Dma2Stream5 => 68,
+                Interrupt::Dma2Stream6 => 69,
+                Interrupt::Dma2Stream7 => 70,
+                Interrupt::Usart6 => 71,
+                Interrupt::I2c3Ev => 72,
+                Interrupt::I2c3Er => 73,
+                Interrupt::OtgHsEp1Out => 74,
+                Interrupt::OtgHsEp1In => 75,
+                Interrupt::OtgHsWkup => 76,
+                Interrupt::OtgHs => 77,
+                Interrupt::Dcmi => 78,
+                Interrupt::Fpu => 81,
+            }
+        }
+    }
+}
+pub use cortex_m::peripheral::Cpuid;
+pub use cortex_m::peripheral::CPUID;
+pub use cortex_m::peripheral::Dcb;
+pub use cortex_m::peripheral::DCB;
+pub use cortex_m::peripheral::Dwt;
+pub use cortex_m::peripheral::DWT;
+pub use cortex_m::peripheral::Fpb;
+pub use cortex_m::peripheral::FPB;
+pub use cortex_m::peripheral::Fpu;
+pub use cortex_m::peripheral::FPU;
+pub use cortex_m::peripheral::Itm;
+pub use cortex_m::peripheral::ITM;
+pub use cortex_m::peripheral::Mpu;
+pub use cortex_m::peripheral::MPU;
+pub use cortex_m::peripheral::Nvic;
+pub use cortex_m::peripheral::NVIC;
+pub use cortex_m::peripheral::Scb;
+pub use cortex_m::peripheral::SCB;
+pub use cortex_m::peripheral::Syst;
+pub use cortex_m::peripheral::SYST;
+pub use cortex_m::peripheral::Tpiu;
+pub use cortex_m::peripheral::TPIU;
+# [ doc = "Random number generator" ]
+pub const RNG: Peripheral<Rng> = unsafe { Peripheral::new(1342572544) };
+# [ doc = "Random number generator" ]
+pub mod rng {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x08 - data register" ]
+        pub dr: Dr,
+    }
+    # [ doc = "control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IeR {
+            bits: u8,
+        }
+        impl IeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RngenR {
+            bits: u8,
+        }
+        impl RngenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RngenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RngenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 3 - Interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ie(&self) -> IeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IeR { bits }
+            }
+            # [ doc = "Bit 2 - Random number generator enable" ]
+            # [ inline ( always ) ]
+            pub fn rngen(&self) -> RngenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RngenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 3 - Interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ie(&mut self) -> _IeW {
+                _IeW { w: self }
+            }
+            # [ doc = "Bit 2 - Random number generator enable" ]
+            # [ inline ( always ) ]
+            pub fn rngen(&mut self) -> _RngenW {
+                _RngenW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SeisR {
+            bits: u8,
+        }
+        impl SeisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CeisR {
+            bits: u8,
+        }
+        impl CeisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SecsR {
+            bits: u8,
+        }
+        impl SecsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CecsR {
+            bits: u8,
+        }
+        impl CecsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrdyR {
+            bits: u8,
+        }
+        impl DrdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SeisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SeisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CeisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CeisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - Seed error interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn seis(&self) -> SeisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SeisR { bits }
+            }
+            # [ doc = "Bit 5 - Clock error interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn ceis(&self) -> CeisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CeisR { bits }
+            }
+            # [ doc = "Bit 2 - Seed error current status" ]
+            # [ inline ( always ) ]
+            pub fn secs(&self) -> SecsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SecsR { bits }
+            }
+            # [ doc = "Bit 1 - Clock error current status" ]
+            # [ inline ( always ) ]
+            pub fn cecs(&self) -> CecsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CecsR { bits }
+            }
+            # [ doc = "Bit 0 - Data ready" ]
+            # [ inline ( always ) ]
+            pub fn drdy(&self) -> DrdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DrdyR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Seed error interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn seis(&mut self) -> _SeisW {
+                _SeisW { w: self }
+            }
+            # [ doc = "Bit 5 - Clock error interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn ceis(&mut self) -> _CeisW {
+                _CeisW { w: self }
+            }
+        }
+    }
+    # [ doc = "data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RndataR {
+            bits: u32,
+        }
+        impl RndataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Random data" ]
+            # [ inline ( always ) ]
+            pub fn rndata(&self) -> RndataR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                RndataR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Random number generator" ]
+pub struct Rng {
+    register_block: rng::RegisterBlock,
+}
+impl Deref for Rng {
+    type Target = rng::RegisterBlock;
+    fn deref(&self) -> &rng::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Digital camera interface" ]
+pub const DCMI: Peripheral<Dcmi> = unsafe { Peripheral::new(1342504960) };
+# [ doc = "Digital camera interface" ]
+pub mod dcmi {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x08 - raw interrupt status register" ]
+        pub ris: Ris,
+        # [ doc = "0x0c - interrupt enable register" ]
+        pub ier: Ier,
+        # [ doc = "0x10 - masked interrupt status register" ]
+        pub mis: Mis,
+        # [ doc = "0x14 - interrupt clear register" ]
+        pub icr: Icr,
+        # [ doc = "0x18 - embedded synchronization code register" ]
+        pub escr: Escr,
+        # [ doc = "0x1c - embedded synchronization unmask register" ]
+        pub esur: Esur,
+        # [ doc = "0x20 - crop window start" ]
+        pub cwstrt: Cwstrt,
+        # [ doc = "0x24 - crop window size" ]
+        pub cwsize: Cwsize,
+        # [ doc = "0x28 - data register" ]
+        pub dr: Dr,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnableR {
+            bits: u8,
+        }
+        impl EnableR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EdmR {
+            bits: u8,
+        }
+        impl EdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FcrcR {
+            bits: u8,
+        }
+        impl FcrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VspolR {
+            bits: u8,
+        }
+        impl VspolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HspolR {
+            bits: u8,
+        }
+        impl HspolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PckpolR {
+            bits: u8,
+        }
+        impl PckpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EssR {
+            bits: u8,
+        }
+        impl EssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JpegR {
+            bits: u8,
+        }
+        impl JpegR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CropR {
+            bits: u8,
+        }
+        impl CropR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmR {
+            bits: u8,
+        }
+        impl CmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CaptureR {
+            bits: u8,
+        }
+        impl CaptureR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnableW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnableW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FcrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FcrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VspolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VspolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HspolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HspolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PckpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PckpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EssW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EssW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JpegW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JpegW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CropW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CropW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CaptureW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CaptureW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - DCMI enable" ]
+            # [ inline ( always ) ]
+            pub fn enable(&self) -> EnableR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnableR { bits }
+            }
+            # [ doc = "Bits 10:11 - Extended data mode" ]
+            # [ inline ( always ) ]
+            pub fn edm(&self) -> EdmR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EdmR { bits }
+            }
+            # [ doc = "Bits 8:9 - Frame capture rate control" ]
+            # [ inline ( always ) ]
+            pub fn fcrc(&self) -> FcrcR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FcrcR { bits }
+            }
+            # [ doc = "Bit 7 - Vertical synchronization polarity" ]
+            # [ inline ( always ) ]
+            pub fn vspol(&self) -> VspolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VspolR { bits }
+            }
+            # [ doc = "Bit 6 - Horizontal synchronization polarity" ]
+            # [ inline ( always ) ]
+            pub fn hspol(&self) -> HspolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HspolR { bits }
+            }
+            # [ doc = "Bit 5 - Pixel clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn pckpol(&self) -> PckpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PckpolR { bits }
+            }
+            # [ doc = "Bit 4 - Embedded synchronization select" ]
+            # [ inline ( always ) ]
+            pub fn ess(&self) -> EssR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EssR { bits }
+            }
+            # [ doc = "Bit 3 - JPEG format" ]
+            # [ inline ( always ) ]
+            pub fn jpeg(&self) -> JpegR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JpegR { bits }
+            }
+            # [ doc = "Bit 2 - Crop feature" ]
+            # [ inline ( always ) ]
+            pub fn crop(&self) -> CropR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CropR { bits }
+            }
+            # [ doc = "Bit 1 - Capture mode" ]
+            # [ inline ( always ) ]
+            pub fn cm(&self) -> CmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmR { bits }
+            }
+            # [ doc = "Bit 0 - Capture enable" ]
+            # [ inline ( always ) ]
+            pub fn capture(&self) -> CaptureR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CaptureR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - DCMI enable" ]
+            # [ inline ( always ) ]
+            pub fn enable(&mut self) -> _EnableW {
+                _EnableW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Extended data mode" ]
+            # [ inline ( always ) ]
+            pub fn edm(&mut self) -> _EdmW {
+                _EdmW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Frame capture rate control" ]
+            # [ inline ( always ) ]
+            pub fn fcrc(&mut self) -> _FcrcW {
+                _FcrcW { w: self }
+            }
+            # [ doc = "Bit 7 - Vertical synchronization polarity" ]
+            # [ inline ( always ) ]
+            pub fn vspol(&mut self) -> _VspolW {
+                _VspolW { w: self }
+            }
+            # [ doc = "Bit 6 - Horizontal synchronization polarity" ]
+            # [ inline ( always ) ]
+            pub fn hspol(&mut self) -> _HspolW {
+                _HspolW { w: self }
+            }
+            # [ doc = "Bit 5 - Pixel clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn pckpol(&mut self) -> _PckpolW {
+                _PckpolW { w: self }
+            }
+            # [ doc = "Bit 4 - Embedded synchronization select" ]
+            # [ inline ( always ) ]
+            pub fn ess(&mut self) -> _EssW {
+                _EssW { w: self }
+            }
+            # [ doc = "Bit 3 - JPEG format" ]
+            # [ inline ( always ) ]
+            pub fn jpeg(&mut self) -> _JpegW {
+                _JpegW { w: self }
+            }
+            # [ doc = "Bit 2 - Crop feature" ]
+            # [ inline ( always ) ]
+            pub fn crop(&mut self) -> _CropW {
+                _CropW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture mode" ]
+            # [ inline ( always ) ]
+            pub fn cm(&mut self) -> _CmW {
+                _CmW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture enable" ]
+            # [ inline ( always ) ]
+            pub fn capture(&mut self) -> _CaptureW {
+                _CaptureW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FneR {
+            bits: u8,
+        }
+        impl FneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VsyncR {
+            bits: u8,
+        }
+        impl VsyncR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsyncR {
+            bits: u8,
+        }
+        impl HsyncR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 2 - FIFO not empty" ]
+            # [ inline ( always ) ]
+            pub fn fne(&self) -> FneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FneR { bits }
+            }
+            # [ doc = "Bit 1 - VSYNC" ]
+            # [ inline ( always ) ]
+            pub fn vsync(&self) -> VsyncR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VsyncR { bits }
+            }
+            # [ doc = "Bit 0 - HSYNC" ]
+            # [ inline ( always ) ]
+            pub fn hsync(&self) -> HsyncR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsyncR { bits }
+            }
+        }
+    }
+    # [ doc = "raw interrupt status register" ]
+    pub struct Ris {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "raw interrupt status register" ]
+    pub mod ris {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ris {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LineRisR {
+            bits: u8,
+        }
+        impl LineRisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VsyncRisR {
+            bits: u8,
+        }
+        impl VsyncRisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrRisR {
+            bits: u8,
+        }
+        impl ErrRisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrRisR {
+            bits: u8,
+        }
+        impl OvrRisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrameRisR {
+            bits: u8,
+        }
+        impl FrameRisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 4 - Line raw interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn line_ris(&self) -> LineRisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LineRisR { bits }
+            }
+            # [ doc = "Bit 3 - VSYNC raw interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn vsync_ris(&self) -> VsyncRisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VsyncRisR { bits }
+            }
+            # [ doc = "Bit 2 - Synchronization error raw interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn err_ris(&self) -> ErrRisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrRisR { bits }
+            }
+            # [ doc = "Bit 1 - Overrun raw interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn ovr_ris(&self) -> OvrRisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrRisR { bits }
+            }
+            # [ doc = "Bit 0 - Capture complete raw interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn frame_ris(&self) -> FrameRisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrameRisR { bits }
+            }
+        }
+    }
+    # [ doc = "interrupt enable register" ]
+    pub struct Ier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "interrupt enable register" ]
+    pub mod ier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LineIeR {
+            bits: u8,
+        }
+        impl LineIeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VsyncIeR {
+            bits: u8,
+        }
+        impl VsyncIeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrIeR {
+            bits: u8,
+        }
+        impl ErrIeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrIeR {
+            bits: u8,
+        }
+        impl OvrIeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrameIeR {
+            bits: u8,
+        }
+        impl FrameIeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LineIeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LineIeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VsyncIeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VsyncIeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErrIeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErrIeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OvrIeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OvrIeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrameIeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrameIeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 4 - Line interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn line_ie(&self) -> LineIeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LineIeR { bits }
+            }
+            # [ doc = "Bit 3 - VSYNC interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn vsync_ie(&self) -> VsyncIeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VsyncIeR { bits }
+            }
+            # [ doc = "Bit 2 - Synchronization error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn err_ie(&self) -> ErrIeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrIeR { bits }
+            }
+            # [ doc = "Bit 1 - Overrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ovr_ie(&self) -> OvrIeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrIeR { bits }
+            }
+            # [ doc = "Bit 0 - Capture complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn frame_ie(&self) -> FrameIeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrameIeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 4 - Line interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn line_ie(&mut self) -> _LineIeW {
+                _LineIeW { w: self }
+            }
+            # [ doc = "Bit 3 - VSYNC interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn vsync_ie(&mut self) -> _VsyncIeW {
+                _VsyncIeW { w: self }
+            }
+            # [ doc = "Bit 2 - Synchronization error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn err_ie(&mut self) -> _ErrIeW {
+                _ErrIeW { w: self }
+            }
+            # [ doc = "Bit 1 - Overrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ovr_ie(&mut self) -> _OvrIeW {
+                _OvrIeW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn frame_ie(&mut self) -> _FrameIeW {
+                _FrameIeW { w: self }
+            }
+        }
+    }
+    # [ doc = "masked interrupt status register" ]
+    pub struct Mis {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "masked interrupt status register" ]
+    pub mod mis {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mis {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LineMisR {
+            bits: u8,
+        }
+        impl LineMisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VsyncMisR {
+            bits: u8,
+        }
+        impl VsyncMisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrMisR {
+            bits: u8,
+        }
+        impl ErrMisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrMisR {
+            bits: u8,
+        }
+        impl OvrMisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrameMisR {
+            bits: u8,
+        }
+        impl FrameMisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 4 - Line masked interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn line_mis(&self) -> LineMisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LineMisR { bits }
+            }
+            # [ doc = "Bit 3 - VSYNC masked interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn vsync_mis(&self) -> VsyncMisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VsyncMisR { bits }
+            }
+            # [ doc = "Bit 2 - Synchronization error masked interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn err_mis(&self) -> ErrMisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrMisR { bits }
+            }
+            # [ doc = "Bit 1 - Overrun masked interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn ovr_mis(&self) -> OvrMisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrMisR { bits }
+            }
+            # [ doc = "Bit 0 - Capture complete masked interrupt status" ]
+            # [ inline ( always ) ]
+            pub fn frame_mis(&self) -> FrameMisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrameMisR { bits }
+            }
+        }
+    }
+    # [ doc = "interrupt clear register" ]
+    pub struct Icr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "interrupt clear register" ]
+    pub mod icr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Icr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LineIscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LineIscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VsyncIscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VsyncIscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErrIscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErrIscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OvrIscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OvrIscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrameIscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrameIscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 4 - line interrupt status clear" ]
+            # [ inline ( always ) ]
+            pub fn line_isc(&mut self) -> _LineIscW {
+                _LineIscW { w: self }
+            }
+            # [ doc = "Bit 3 - Vertical synch interrupt status clear" ]
+            # [ inline ( always ) ]
+            pub fn vsync_isc(&mut self) -> _VsyncIscW {
+                _VsyncIscW { w: self }
+            }
+            # [ doc = "Bit 2 - Synchronization error interrupt status clear" ]
+            # [ inline ( always ) ]
+            pub fn err_isc(&mut self) -> _ErrIscW {
+                _ErrIscW { w: self }
+            }
+            # [ doc = "Bit 1 - Overrun interrupt status clear" ]
+            # [ inline ( always ) ]
+            pub fn ovr_isc(&mut self) -> _OvrIscW {
+                _OvrIscW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture complete interrupt status clear" ]
+            # [ inline ( always ) ]
+            pub fn frame_isc(&mut self) -> _FrameIscW {
+                _FrameIscW { w: self }
+            }
+        }
+    }
+    # [ doc = "embedded synchronization code register" ]
+    pub struct Escr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "embedded synchronization code register" ]
+    pub mod escr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Escr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FecR {
+            bits: u8,
+        }
+        impl FecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LecR {
+            bits: u8,
+        }
+        impl LecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LscR {
+            bits: u8,
+        }
+        impl LscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FscR {
+            bits: u8,
+        }
+        impl FscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FecW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FecW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LecW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LecW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - Frame end delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn fec(&self) -> FecR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FecR { bits }
+            }
+            # [ doc = "Bits 16:23 - Line end delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn lec(&self) -> LecR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LecR { bits }
+            }
+            # [ doc = "Bits 8:15 - Line start delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn lsc(&self) -> LscR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LscR { bits }
+            }
+            # [ doc = "Bits 0:7 - Frame start delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn fsc(&self) -> FscR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - Frame end delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn fec(&mut self) -> _FecW {
+                _FecW { w: self }
+            }
+            # [ doc = "Bits 16:23 - Line end delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn lec(&mut self) -> _LecW {
+                _LecW { w: self }
+            }
+            # [ doc = "Bits 8:15 - Line start delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn lsc(&mut self) -> _LscW {
+                _LscW { w: self }
+            }
+            # [ doc = "Bits 0:7 - Frame start delimiter code" ]
+            # [ inline ( always ) ]
+            pub fn fsc(&mut self) -> _FscW {
+                _FscW { w: self }
+            }
+        }
+    }
+    # [ doc = "embedded synchronization unmask register" ]
+    pub struct Esur {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "embedded synchronization unmask register" ]
+    pub mod esur {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Esur {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeuR {
+            bits: u8,
+        }
+        impl FeuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LeuR {
+            bits: u8,
+        }
+        impl LeuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsuR {
+            bits: u8,
+        }
+        impl LsuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsuR {
+            bits: u8,
+        }
+        impl FsuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LeuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LeuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FsuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FsuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - Frame end delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn feu(&self) -> FeuR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeuR { bits }
+            }
+            # [ doc = "Bits 16:23 - Line end delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn leu(&self) -> LeuR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LeuR { bits }
+            }
+            # [ doc = "Bits 8:15 - Line start delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn lsu(&self) -> LsuR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsuR { bits }
+            }
+            # [ doc = "Bits 0:7 - Frame start delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn fsu(&self) -> FsuR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsuR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - Frame end delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn feu(&mut self) -> _FeuW {
+                _FeuW { w: self }
+            }
+            # [ doc = "Bits 16:23 - Line end delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn leu(&mut self) -> _LeuW {
+                _LeuW { w: self }
+            }
+            # [ doc = "Bits 8:15 - Line start delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn lsu(&mut self) -> _LsuW {
+                _LsuW { w: self }
+            }
+            # [ doc = "Bits 0:7 - Frame start delimiter unmask" ]
+            # [ inline ( always ) ]
+            pub fn fsu(&mut self) -> _FsuW {
+                _FsuW { w: self }
+            }
+        }
+    }
+    # [ doc = "crop window start" ]
+    pub struct Cwstrt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "crop window start" ]
+    pub mod cwstrt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cwstrt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VstR {
+            bits: u16,
+        }
+        impl VstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HoffcntR {
+            bits: u16,
+        }
+        impl HoffcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 8191;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HoffcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HoffcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 16383;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:28 - Vertical start line count" ]
+            # [ inline ( always ) ]
+            pub fn vst(&self) -> VstR {
+                let bits = {
+                    const MASK: u16 = 8191;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                VstR { bits }
+            }
+            # [ doc = "Bits 0:13 - Horizontal offset count" ]
+            # [ inline ( always ) ]
+            pub fn hoffcnt(&self) -> HoffcntR {
+                let bits = {
+                    const MASK: u16 = 16383;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HoffcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:28 - Vertical start line count" ]
+            # [ inline ( always ) ]
+            pub fn vst(&mut self) -> _VstW {
+                _VstW { w: self }
+            }
+            # [ doc = "Bits 0:13 - Horizontal offset count" ]
+            # [ inline ( always ) ]
+            pub fn hoffcnt(&mut self) -> _HoffcntW {
+                _HoffcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "crop window size" ]
+    pub struct Cwsize {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "crop window size" ]
+    pub mod cwsize {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cwsize {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VlineR {
+            bits: u16,
+        }
+        impl VlineR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CapcntR {
+            bits: u16,
+        }
+        impl CapcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VlineW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VlineW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 16383;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CapcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CapcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 16383;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:29 - Vertical line count" ]
+            # [ inline ( always ) ]
+            pub fn vline(&self) -> VlineR {
+                let bits = {
+                    const MASK: u16 = 16383;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                VlineR { bits }
+            }
+            # [ doc = "Bits 0:13 - Capture count" ]
+            # [ inline ( always ) ]
+            pub fn capcnt(&self) -> CapcntR {
+                let bits = {
+                    const MASK: u16 = 16383;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CapcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:29 - Vertical line count" ]
+            # [ inline ( always ) ]
+            pub fn vline(&mut self) -> _VlineW {
+                _VlineW { w: self }
+            }
+            # [ doc = "Bits 0:13 - Capture count" ]
+            # [ inline ( always ) ]
+            pub fn capcnt(&mut self) -> _CapcntW {
+                _CapcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Byte3R {
+            bits: u8,
+        }
+        impl Byte3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Byte2R {
+            bits: u8,
+        }
+        impl Byte2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Byte1R {
+            bits: u8,
+        }
+        impl Byte1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Byte0R {
+            bits: u8,
+        }
+        impl Byte0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - Data byte 3" ]
+            # [ inline ( always ) ]
+            pub fn byte3(&self) -> Byte3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Byte3R { bits }
+            }
+            # [ doc = "Bits 16:23 - Data byte 2" ]
+            # [ inline ( always ) ]
+            pub fn byte2(&self) -> Byte2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Byte2R { bits }
+            }
+            # [ doc = "Bits 8:15 - Data byte 1" ]
+            # [ inline ( always ) ]
+            pub fn byte1(&self) -> Byte1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Byte1R { bits }
+            }
+            # [ doc = "Bits 0:7 - Data byte 0" ]
+            # [ inline ( always ) ]
+            pub fn byte0(&self) -> Byte0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Byte0R { bits }
+            }
+        }
+    }
+}
+# [ doc = "Digital camera interface" ]
+pub struct Dcmi {
+    register_block: dcmi::RegisterBlock,
+}
+impl Deref for Dcmi {
+    type Target = dcmi::RegisterBlock;
+    fn deref(&self) -> &dcmi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Flexible static memory controller" ]
+pub const FSMC: Peripheral<Fsmc> = unsafe { Peripheral::new(2684354560) };
+# [ doc = "Flexible static memory controller" ]
+pub mod fsmc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - SRAM/NOR-Flash chip-select control register 1" ]
+        pub bcr1: Bcr1,
+        # [ doc = "0x04 - SRAM/NOR-Flash chip-select timing register 1" ]
+        pub btr1: Btr1,
+        # [ doc = "0x08 - SRAM/NOR-Flash chip-select control register 2" ]
+        pub bcr2: Bcr2,
+        # [ doc = "0x0c - SRAM/NOR-Flash chip-select timing register 2" ]
+        pub btr2: Btr2,
+        # [ doc = "0x10 - SRAM/NOR-Flash chip-select control register 3" ]
+        pub bcr3: Bcr3,
+        # [ doc = "0x14 - SRAM/NOR-Flash chip-select timing register 3" ]
+        pub btr3: Btr3,
+        # [ doc = "0x18 - SRAM/NOR-Flash chip-select control register 4" ]
+        pub bcr4: Bcr4,
+        # [ doc = "0x1c - SRAM/NOR-Flash chip-select timing register 4" ]
+        pub btr4: Btr4,
+        _reserved0: [u8; 64usize],
+        # [ doc = "0x60 - PC Card/NAND Flash control register 2" ]
+        pub pcr2: Pcr2,
+        # [ doc = "0x64 - FIFO status and interrupt register 2" ]
+        pub sr2: Sr2,
+        # [ doc = "0x68 - Common memory space timing register 2" ]
+        pub pmem2: Pmem2,
+        # [ doc = "0x6c - Attribute memory space timing register 2" ]
+        pub patt2: Patt2,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x74 - ECC result register 2" ]
+        pub eccr2: Eccr2,
+        _reserved2: [u8; 8usize],
+        # [ doc = "0x80 - PC Card/NAND Flash control register 3" ]
+        pub pcr3: Pcr3,
+        # [ doc = "0x84 - FIFO status and interrupt register 3" ]
+        pub sr3: Sr3,
+        # [ doc = "0x88 - Common memory space timing register 3" ]
+        pub pmem3: Pmem3,
+        # [ doc = "0x8c - Attribute memory space timing register 3" ]
+        pub patt3: Patt3,
+        _reserved3: [u8; 4usize],
+        # [ doc = "0x94 - ECC result register 3" ]
+        pub eccr3: Eccr3,
+        _reserved4: [u8; 8usize],
+        # [ doc = "0xa0 - PC Card/NAND Flash control register 4" ]
+        pub pcr4: Pcr4,
+        # [ doc = "0xa4 - FIFO status and interrupt register 4" ]
+        pub sr4: Sr4,
+        # [ doc = "0xa8 - Common memory space timing register 4" ]
+        pub pmem4: Pmem4,
+        # [ doc = "0xac - Attribute memory space timing register 4" ]
+        pub patt4: Patt4,
+        # [ doc = "0xb0 - I/O space timing register 4" ]
+        pub pio4: Pio4,
+        _reserved5: [u8; 80usize],
+        # [ doc = "0x104 - SRAM/NOR-Flash write timing registers 1" ]
+        pub bwtr1: Bwtr1,
+        _reserved6: [u8; 4usize],
+        # [ doc = "0x10c - SRAM/NOR-Flash write timing registers 2" ]
+        pub bwtr2: Bwtr2,
+        _reserved7: [u8; 4usize],
+        # [ doc = "0x114 - SRAM/NOR-Flash write timing registers 3" ]
+        pub bwtr3: Bwtr3,
+        _reserved8: [u8; 4usize],
+        # [ doc = "0x11c - SRAM/NOR-Flash write timing registers 4" ]
+        pub bwtr4: Bwtr4,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 1" ]
+    pub struct Bcr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 1" ]
+    pub mod bcr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bcr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CburstrwR {
+            bits: u8,
+        }
+        impl CburstrwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsyncwaitR {
+            bits: u8,
+        }
+        impl AsyncwaitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtmodR {
+            bits: u8,
+        }
+        impl ExtmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitenR {
+            bits: u8,
+        }
+        impl WaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrenR {
+            bits: u8,
+        }
+        impl WrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitcfgR {
+            bits: u8,
+        }
+        impl WaitcfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitpolR {
+            bits: u8,
+        }
+        impl WaitpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BurstenR {
+            bits: u8,
+        }
+        impl BurstenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FaccenR {
+            bits: u8,
+        }
+        impl FaccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MwidR {
+            bits: u8,
+        }
+        impl MwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtypR {
+            bits: u8,
+        }
+        impl MtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuxenR {
+            bits: u8,
+        }
+        impl MuxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbkenR {
+            bits: u8,
+        }
+        impl MbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CburstrwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CburstrwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AsyncwaitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AsyncwaitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitcfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitcfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BurstenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BurstenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FaccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FaccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MuxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MuxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&self) -> CburstrwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CburstrwR { bits }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&self) -> AsyncwaitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsyncwaitR { bits }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&self) -> ExtmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtmodR { bits }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&self) -> WaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitenR { bits }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&self) -> WrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrenR { bits }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&self) -> WaitcfgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitcfgR { bits }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&self) -> WaitpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitpolR { bits }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&self) -> BurstenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BurstenR { bits }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&self) -> FaccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FaccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&self) -> MwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MwidR { bits }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&self) -> MtypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtypR { bits }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&self) -> MuxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuxenR { bits }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&self) -> MbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbkenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12496 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&mut self) -> _CburstrwW {
+                _CburstrwW { w: self }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&mut self) -> _AsyncwaitW {
+                _AsyncwaitW { w: self }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&mut self) -> _ExtmodW {
+                _ExtmodW { w: self }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&mut self) -> _WaitenW {
+                _WaitenW { w: self }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&mut self) -> _WrenW {
+                _WrenW { w: self }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&mut self) -> _WaitcfgW {
+                _WaitcfgW { w: self }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&mut self) -> _WaitpolW {
+                _WaitpolW { w: self }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&mut self) -> _BurstenW {
+                _BurstenW { w: self }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&mut self) -> _FaccenW {
+                _FaccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&mut self) -> _MwidW {
+                _MwidW { w: self }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&mut self) -> _MtypW {
+                _MtypW { w: self }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&mut self) -> _MuxenW {
+                _MuxenW { w: self }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&mut self) -> _MbkenW {
+                _MbkenW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 1" ]
+    pub struct Btr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 1" ]
+    pub mod btr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Btr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BusturnR {
+            bits: u8,
+        }
+        impl BusturnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BusturnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BusturnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&self) -> BusturnR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BusturnR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&mut self) -> _BusturnW {
+                _BusturnW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 2" ]
+    pub struct Bcr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 2" ]
+    pub mod bcr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bcr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CburstrwR {
+            bits: u8,
+        }
+        impl CburstrwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsyncwaitR {
+            bits: u8,
+        }
+        impl AsyncwaitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtmodR {
+            bits: u8,
+        }
+        impl ExtmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitenR {
+            bits: u8,
+        }
+        impl WaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrenR {
+            bits: u8,
+        }
+        impl WrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitcfgR {
+            bits: u8,
+        }
+        impl WaitcfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrapmodR {
+            bits: u8,
+        }
+        impl WrapmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitpolR {
+            bits: u8,
+        }
+        impl WaitpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BurstenR {
+            bits: u8,
+        }
+        impl BurstenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FaccenR {
+            bits: u8,
+        }
+        impl FaccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MwidR {
+            bits: u8,
+        }
+        impl MwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtypR {
+            bits: u8,
+        }
+        impl MtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuxenR {
+            bits: u8,
+        }
+        impl MuxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbkenR {
+            bits: u8,
+        }
+        impl MbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CburstrwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CburstrwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AsyncwaitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AsyncwaitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitcfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitcfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrapmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrapmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BurstenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BurstenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FaccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FaccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MuxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MuxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&self) -> CburstrwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CburstrwR { bits }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&self) -> AsyncwaitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsyncwaitR { bits }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&self) -> ExtmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtmodR { bits }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&self) -> WaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitenR { bits }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&self) -> WrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrenR { bits }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&self) -> WaitcfgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitcfgR { bits }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&self) -> WrapmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrapmodR { bits }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&self) -> WaitpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitpolR { bits }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&self) -> BurstenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BurstenR { bits }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&self) -> FaccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FaccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&self) -> MwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MwidR { bits }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&self) -> MtypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtypR { bits }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&self) -> MuxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuxenR { bits }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&self) -> MbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbkenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12496 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&mut self) -> _CburstrwW {
+                _CburstrwW { w: self }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&mut self) -> _AsyncwaitW {
+                _AsyncwaitW { w: self }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&mut self) -> _ExtmodW {
+                _ExtmodW { w: self }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&mut self) -> _WaitenW {
+                _WaitenW { w: self }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&mut self) -> _WrenW {
+                _WrenW { w: self }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&mut self) -> _WaitcfgW {
+                _WaitcfgW { w: self }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&mut self) -> _WrapmodW {
+                _WrapmodW { w: self }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&mut self) -> _WaitpolW {
+                _WaitpolW { w: self }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&mut self) -> _BurstenW {
+                _BurstenW { w: self }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&mut self) -> _FaccenW {
+                _FaccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&mut self) -> _MwidW {
+                _MwidW { w: self }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&mut self) -> _MtypW {
+                _MtypW { w: self }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&mut self) -> _MuxenW {
+                _MuxenW { w: self }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&mut self) -> _MbkenW {
+                _MbkenW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 2" ]
+    pub struct Btr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 2" ]
+    pub mod btr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Btr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BusturnR {
+            bits: u8,
+        }
+        impl BusturnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BusturnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BusturnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&self) -> BusturnR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BusturnR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&mut self) -> _BusturnW {
+                _BusturnW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 3" ]
+    pub struct Bcr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 3" ]
+    pub mod bcr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bcr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CburstrwR {
+            bits: u8,
+        }
+        impl CburstrwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsyncwaitR {
+            bits: u8,
+        }
+        impl AsyncwaitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtmodR {
+            bits: u8,
+        }
+        impl ExtmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitenR {
+            bits: u8,
+        }
+        impl WaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrenR {
+            bits: u8,
+        }
+        impl WrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitcfgR {
+            bits: u8,
+        }
+        impl WaitcfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrapmodR {
+            bits: u8,
+        }
+        impl WrapmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitpolR {
+            bits: u8,
+        }
+        impl WaitpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BurstenR {
+            bits: u8,
+        }
+        impl BurstenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FaccenR {
+            bits: u8,
+        }
+        impl FaccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MwidR {
+            bits: u8,
+        }
+        impl MwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtypR {
+            bits: u8,
+        }
+        impl MtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuxenR {
+            bits: u8,
+        }
+        impl MuxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbkenR {
+            bits: u8,
+        }
+        impl MbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CburstrwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CburstrwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AsyncwaitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AsyncwaitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitcfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitcfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrapmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrapmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BurstenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BurstenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FaccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FaccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MuxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MuxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&self) -> CburstrwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CburstrwR { bits }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&self) -> AsyncwaitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsyncwaitR { bits }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&self) -> ExtmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtmodR { bits }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&self) -> WaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitenR { bits }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&self) -> WrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrenR { bits }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&self) -> WaitcfgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitcfgR { bits }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&self) -> WrapmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrapmodR { bits }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&self) -> WaitpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitpolR { bits }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&self) -> BurstenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BurstenR { bits }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&self) -> FaccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FaccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&self) -> MwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MwidR { bits }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&self) -> MtypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtypR { bits }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&self) -> MuxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuxenR { bits }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&self) -> MbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbkenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12496 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&mut self) -> _CburstrwW {
+                _CburstrwW { w: self }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&mut self) -> _AsyncwaitW {
+                _AsyncwaitW { w: self }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&mut self) -> _ExtmodW {
+                _ExtmodW { w: self }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&mut self) -> _WaitenW {
+                _WaitenW { w: self }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&mut self) -> _WrenW {
+                _WrenW { w: self }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&mut self) -> _WaitcfgW {
+                _WaitcfgW { w: self }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&mut self) -> _WrapmodW {
+                _WrapmodW { w: self }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&mut self) -> _WaitpolW {
+                _WaitpolW { w: self }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&mut self) -> _BurstenW {
+                _BurstenW { w: self }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&mut self) -> _FaccenW {
+                _FaccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&mut self) -> _MwidW {
+                _MwidW { w: self }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&mut self) -> _MtypW {
+                _MtypW { w: self }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&mut self) -> _MuxenW {
+                _MuxenW { w: self }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&mut self) -> _MbkenW {
+                _MbkenW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 3" ]
+    pub struct Btr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 3" ]
+    pub mod btr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Btr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BusturnR {
+            bits: u8,
+        }
+        impl BusturnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BusturnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BusturnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&self) -> BusturnR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BusturnR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&mut self) -> _BusturnW {
+                _BusturnW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 4" ]
+    pub struct Bcr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select control register 4" ]
+    pub mod bcr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bcr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CburstrwR {
+            bits: u8,
+        }
+        impl CburstrwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsyncwaitR {
+            bits: u8,
+        }
+        impl AsyncwaitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtmodR {
+            bits: u8,
+        }
+        impl ExtmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitenR {
+            bits: u8,
+        }
+        impl WaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrenR {
+            bits: u8,
+        }
+        impl WrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitcfgR {
+            bits: u8,
+        }
+        impl WaitcfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrapmodR {
+            bits: u8,
+        }
+        impl WrapmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitpolR {
+            bits: u8,
+        }
+        impl WaitpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BurstenR {
+            bits: u8,
+        }
+        impl BurstenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FaccenR {
+            bits: u8,
+        }
+        impl FaccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MwidR {
+            bits: u8,
+        }
+        impl MwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtypR {
+            bits: u8,
+        }
+        impl MtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuxenR {
+            bits: u8,
+        }
+        impl MuxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbkenR {
+            bits: u8,
+        }
+        impl MbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CburstrwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CburstrwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AsyncwaitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AsyncwaitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitcfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitcfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrapmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrapmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BurstenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BurstenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FaccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FaccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MuxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MuxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&self) -> CburstrwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CburstrwR { bits }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&self) -> AsyncwaitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsyncwaitR { bits }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&self) -> ExtmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtmodR { bits }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&self) -> WaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitenR { bits }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&self) -> WrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrenR { bits }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&self) -> WaitcfgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitcfgR { bits }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&self) -> WrapmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrapmodR { bits }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&self) -> WaitpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitpolR { bits }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&self) -> BurstenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BurstenR { bits }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&self) -> FaccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FaccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&self) -> MwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MwidR { bits }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&self) -> MtypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtypR { bits }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&self) -> MuxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuxenR { bits }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&self) -> MbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbkenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12496 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 19 - CBURSTRW" ]
+            # [ inline ( always ) ]
+            pub fn cburstrw(&mut self) -> _CburstrwW {
+                _CburstrwW { w: self }
+            }
+            # [ doc = "Bit 15 - ASYNCWAIT" ]
+            # [ inline ( always ) ]
+            pub fn asyncwait(&mut self) -> _AsyncwaitW {
+                _AsyncwaitW { w: self }
+            }
+            # [ doc = "Bit 14 - EXTMOD" ]
+            # [ inline ( always ) ]
+            pub fn extmod(&mut self) -> _ExtmodW {
+                _ExtmodW { w: self }
+            }
+            # [ doc = "Bit 13 - WAITEN" ]
+            # [ inline ( always ) ]
+            pub fn waiten(&mut self) -> _WaitenW {
+                _WaitenW { w: self }
+            }
+            # [ doc = "Bit 12 - WREN" ]
+            # [ inline ( always ) ]
+            pub fn wren(&mut self) -> _WrenW {
+                _WrenW { w: self }
+            }
+            # [ doc = "Bit 11 - WAITCFG" ]
+            # [ inline ( always ) ]
+            pub fn waitcfg(&mut self) -> _WaitcfgW {
+                _WaitcfgW { w: self }
+            }
+            # [ doc = "Bit 10 - WRAPMOD" ]
+            # [ inline ( always ) ]
+            pub fn wrapmod(&mut self) -> _WrapmodW {
+                _WrapmodW { w: self }
+            }
+            # [ doc = "Bit 9 - WAITPOL" ]
+            # [ inline ( always ) ]
+            pub fn waitpol(&mut self) -> _WaitpolW {
+                _WaitpolW { w: self }
+            }
+            # [ doc = "Bit 8 - BURSTEN" ]
+            # [ inline ( always ) ]
+            pub fn bursten(&mut self) -> _BurstenW {
+                _BurstenW { w: self }
+            }
+            # [ doc = "Bit 6 - FACCEN" ]
+            # [ inline ( always ) ]
+            pub fn faccen(&mut self) -> _FaccenW {
+                _FaccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - MWID" ]
+            # [ inline ( always ) ]
+            pub fn mwid(&mut self) -> _MwidW {
+                _MwidW { w: self }
+            }
+            # [ doc = "Bits 2:3 - MTYP" ]
+            # [ inline ( always ) ]
+            pub fn mtyp(&mut self) -> _MtypW {
+                _MtypW { w: self }
+            }
+            # [ doc = "Bit 1 - MUXEN" ]
+            # [ inline ( always ) ]
+            pub fn muxen(&mut self) -> _MuxenW {
+                _MuxenW { w: self }
+            }
+            # [ doc = "Bit 0 - MBKEN" ]
+            # [ inline ( always ) ]
+            pub fn mbken(&mut self) -> _MbkenW {
+                _MbkenW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 4" ]
+    pub struct Btr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash chip-select timing register 4" ]
+    pub mod btr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Btr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BusturnR {
+            bits: u8,
+        }
+        impl BusturnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BusturnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BusturnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&self) -> BusturnR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BusturnR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 16:19 - BUSTURN" ]
+            # [ inline ( always ) ]
+            pub fn busturn(&mut self) -> _BusturnW {
+                _BusturnW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "PC Card/NAND Flash control register 2" ]
+    pub struct Pcr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "PC Card/NAND Flash control register 2" ]
+    pub mod pcr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pcr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccpsR {
+            bits: u8,
+        }
+        impl EccpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TarR {
+            bits: u8,
+        }
+        impl TarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TclrR {
+            bits: u8,
+        }
+        impl TclrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccenR {
+            bits: u8,
+        }
+        impl EccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwidR {
+            bits: u8,
+        }
+        impl PwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtypR {
+            bits: u8,
+        }
+        impl PtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PbkenR {
+            bits: u8,
+        }
+        impl PbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwaitenR {
+            bits: u8,
+        }
+        impl PwaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TclrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TclrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&self) -> EccpsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccpsR { bits }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&self) -> TarR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TarR { bits }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&self) -> TclrR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TclrR { bits }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&self) -> EccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&self) -> PwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwidR { bits }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&self) -> PtypR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtypR { bits }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&self) -> PbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PbkenR { bits }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&self) -> PwaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwaitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 24 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&mut self) -> _EccpsW {
+                _EccpsW { w: self }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&mut self) -> _TarW {
+                _TarW { w: self }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&mut self) -> _TclrW {
+                _TclrW { w: self }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&mut self) -> _EccenW {
+                _EccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&mut self) -> _PwidW {
+                _PwidW { w: self }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&mut self) -> _PtypW {
+                _PtypW { w: self }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&mut self) -> _PbkenW {
+                _PbkenW { w: self }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&mut self) -> _PwaitenW {
+                _PwaitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "FIFO status and interrupt register 2" ]
+    pub struct Sr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "FIFO status and interrupt register 2" ]
+    pub mod sr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FemptR {
+            bits: u8,
+        }
+        impl FemptR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfenR {
+            bits: u8,
+        }
+        impl IfenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlenR {
+            bits: u8,
+        }
+        impl IlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrenR {
+            bits: u8,
+        }
+        impl IrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfsR {
+            bits: u8,
+        }
+        impl IfsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlsR {
+            bits: u8,
+        }
+        impl IlsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrsR {
+            bits: u8,
+        }
+        impl IrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - FEMPT" ]
+            # [ inline ( always ) ]
+            pub fn fempt(&self) -> FemptR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FemptR { bits }
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&self) -> IfenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfenR { bits }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&self) -> IlenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlenR { bits }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&self) -> IrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrenR { bits }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&self) -> IfsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfsR { bits }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&self) -> IlsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlsR { bits }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&self) -> IrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 64 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&mut self) -> _IfenW {
+                _IfenW { w: self }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&mut self) -> _IlenW {
+                _IlenW { w: self }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&mut self) -> _IrenW {
+                _IrenW { w: self }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&mut self) -> _IfsW {
+                _IfsW { w: self }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&mut self) -> _IlsW {
+                _IlsW { w: self }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&mut self) -> _IrsW {
+                _IrsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Common memory space timing register 2" ]
+    pub struct Pmem2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Common memory space timing register 2" ]
+    pub mod pmem2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pmem2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemhizxR {
+            bits: u8,
+        }
+        impl MemhizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemholdxR {
+            bits: u8,
+        }
+        impl MemholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemwaitxR {
+            bits: u8,
+        }
+        impl MemwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemsetxR {
+            bits: u8,
+        }
+        impl MemsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemhizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemhizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&self) -> MemhizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemhizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&self) -> MemholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&self) -> MemwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&self) -> MemsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&mut self) -> _MemhizxW {
+                _MemhizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&mut self) -> _MemholdxW {
+                _MemholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&mut self) -> _MemwaitxW {
+                _MemwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&mut self) -> _MemsetxW {
+                _MemsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "Attribute memory space timing register 2" ]
+    pub struct Patt2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Attribute memory space timing register 2" ]
+    pub mod patt2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Patt2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AtthizxR {
+            bits: u8,
+        }
+        impl AtthizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttholdxR {
+            bits: u8,
+        }
+        impl AttholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttwaitxR {
+            bits: u8,
+        }
+        impl AttwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttsetxR {
+            bits: u8,
+        }
+        impl AttsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AtthizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AtthizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&self) -> AtthizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AtthizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&self) -> AttholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&self) -> AttwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&self) -> AttsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&mut self) -> _AtthizxW {
+                _AtthizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&mut self) -> _AttholdxW {
+                _AttholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&mut self) -> _AttwaitxW {
+                _AttwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&mut self) -> _AttsetxW {
+                _AttsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "ECC result register 2" ]
+    pub struct Eccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "ECC result register 2" ]
+    pub mod eccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Eccr2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccxR {
+            bits: u32,
+        }
+        impl EccxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - ECCx" ]
+            # [ inline ( always ) ]
+            pub fn eccx(&self) -> EccxR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                EccxR { bits }
+            }
+        }
+    }
+    # [ doc = "PC Card/NAND Flash control register 3" ]
+    pub struct Pcr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "PC Card/NAND Flash control register 3" ]
+    pub mod pcr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pcr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccpsR {
+            bits: u8,
+        }
+        impl EccpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TarR {
+            bits: u8,
+        }
+        impl TarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TclrR {
+            bits: u8,
+        }
+        impl TclrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccenR {
+            bits: u8,
+        }
+        impl EccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwidR {
+            bits: u8,
+        }
+        impl PwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtypR {
+            bits: u8,
+        }
+        impl PtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PbkenR {
+            bits: u8,
+        }
+        impl PbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwaitenR {
+            bits: u8,
+        }
+        impl PwaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TclrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TclrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&self) -> EccpsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccpsR { bits }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&self) -> TarR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TarR { bits }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&self) -> TclrR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TclrR { bits }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&self) -> EccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&self) -> PwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwidR { bits }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&self) -> PtypR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtypR { bits }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&self) -> PbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PbkenR { bits }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&self) -> PwaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwaitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 24 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&mut self) -> _EccpsW {
+                _EccpsW { w: self }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&mut self) -> _TarW {
+                _TarW { w: self }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&mut self) -> _TclrW {
+                _TclrW { w: self }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&mut self) -> _EccenW {
+                _EccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&mut self) -> _PwidW {
+                _PwidW { w: self }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&mut self) -> _PtypW {
+                _PtypW { w: self }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&mut self) -> _PbkenW {
+                _PbkenW { w: self }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&mut self) -> _PwaitenW {
+                _PwaitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "FIFO status and interrupt register 3" ]
+    pub struct Sr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "FIFO status and interrupt register 3" ]
+    pub mod sr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FemptR {
+            bits: u8,
+        }
+        impl FemptR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfenR {
+            bits: u8,
+        }
+        impl IfenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlenR {
+            bits: u8,
+        }
+        impl IlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrenR {
+            bits: u8,
+        }
+        impl IrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfsR {
+            bits: u8,
+        }
+        impl IfsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlsR {
+            bits: u8,
+        }
+        impl IlsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrsR {
+            bits: u8,
+        }
+        impl IrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - FEMPT" ]
+            # [ inline ( always ) ]
+            pub fn fempt(&self) -> FemptR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FemptR { bits }
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&self) -> IfenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfenR { bits }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&self) -> IlenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlenR { bits }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&self) -> IrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrenR { bits }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&self) -> IfsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfsR { bits }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&self) -> IlsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlsR { bits }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&self) -> IrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 64 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&mut self) -> _IfenW {
+                _IfenW { w: self }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&mut self) -> _IlenW {
+                _IlenW { w: self }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&mut self) -> _IrenW {
+                _IrenW { w: self }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&mut self) -> _IfsW {
+                _IfsW { w: self }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&mut self) -> _IlsW {
+                _IlsW { w: self }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&mut self) -> _IrsW {
+                _IrsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Common memory space timing register 3" ]
+    pub struct Pmem3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Common memory space timing register 3" ]
+    pub mod pmem3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pmem3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemhizxR {
+            bits: u8,
+        }
+        impl MemhizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemholdxR {
+            bits: u8,
+        }
+        impl MemholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemwaitxR {
+            bits: u8,
+        }
+        impl MemwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemsetxR {
+            bits: u8,
+        }
+        impl MemsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemhizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemhizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&self) -> MemhizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemhizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&self) -> MemholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&self) -> MemwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&self) -> MemsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&mut self) -> _MemhizxW {
+                _MemhizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&mut self) -> _MemholdxW {
+                _MemholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&mut self) -> _MemwaitxW {
+                _MemwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&mut self) -> _MemsetxW {
+                _MemsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "Attribute memory space timing register 3" ]
+    pub struct Patt3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Attribute memory space timing register 3" ]
+    pub mod patt3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Patt3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AtthizxR {
+            bits: u8,
+        }
+        impl AtthizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttholdxR {
+            bits: u8,
+        }
+        impl AttholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttwaitxR {
+            bits: u8,
+        }
+        impl AttwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttsetxR {
+            bits: u8,
+        }
+        impl AttsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AtthizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AtthizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&self) -> AtthizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AtthizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&self) -> AttholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&self) -> AttwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&self) -> AttsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&mut self) -> _AtthizxW {
+                _AtthizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&mut self) -> _AttholdxW {
+                _AttholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&mut self) -> _AttwaitxW {
+                _AttwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&mut self) -> _AttsetxW {
+                _AttsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "ECC result register 3" ]
+    pub struct Eccr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "ECC result register 3" ]
+    pub mod eccr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Eccr3 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccxR {
+            bits: u32,
+        }
+        impl EccxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - ECCx" ]
+            # [ inline ( always ) ]
+            pub fn eccx(&self) -> EccxR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                EccxR { bits }
+            }
+        }
+    }
+    # [ doc = "PC Card/NAND Flash control register 4" ]
+    pub struct Pcr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "PC Card/NAND Flash control register 4" ]
+    pub mod pcr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pcr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccpsR {
+            bits: u8,
+        }
+        impl EccpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TarR {
+            bits: u8,
+        }
+        impl TarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TclrR {
+            bits: u8,
+        }
+        impl TclrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EccenR {
+            bits: u8,
+        }
+        impl EccenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwidR {
+            bits: u8,
+        }
+        impl PwidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtypR {
+            bits: u8,
+        }
+        impl PtypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PbkenR {
+            bits: u8,
+        }
+        impl PbkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwaitenR {
+            bits: u8,
+        }
+        impl PwaitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TclrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TclrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EccenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EccenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PbkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PbkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwaitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwaitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&self) -> EccpsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccpsR { bits }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&self) -> TarR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TarR { bits }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&self) -> TclrR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TclrR { bits }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&self) -> EccenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EccenR { bits }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&self) -> PwidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwidR { bits }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&self) -> PtypR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtypR { bits }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&self) -> PbkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PbkenR { bits }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&self) -> PwaitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwaitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 24 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 17:19 - ECCPS" ]
+            # [ inline ( always ) ]
+            pub fn eccps(&mut self) -> _EccpsW {
+                _EccpsW { w: self }
+            }
+            # [ doc = "Bits 13:16 - TAR" ]
+            # [ inline ( always ) ]
+            pub fn tar(&mut self) -> _TarW {
+                _TarW { w: self }
+            }
+            # [ doc = "Bits 9:12 - TCLR" ]
+            # [ inline ( always ) ]
+            pub fn tclr(&mut self) -> _TclrW {
+                _TclrW { w: self }
+            }
+            # [ doc = "Bit 6 - ECCEN" ]
+            # [ inline ( always ) ]
+            pub fn eccen(&mut self) -> _EccenW {
+                _EccenW { w: self }
+            }
+            # [ doc = "Bits 4:5 - PWID" ]
+            # [ inline ( always ) ]
+            pub fn pwid(&mut self) -> _PwidW {
+                _PwidW { w: self }
+            }
+            # [ doc = "Bit 3 - PTYP" ]
+            # [ inline ( always ) ]
+            pub fn ptyp(&mut self) -> _PtypW {
+                _PtypW { w: self }
+            }
+            # [ doc = "Bit 2 - PBKEN" ]
+            # [ inline ( always ) ]
+            pub fn pbken(&mut self) -> _PbkenW {
+                _PbkenW { w: self }
+            }
+            # [ doc = "Bit 1 - PWAITEN" ]
+            # [ inline ( always ) ]
+            pub fn pwaiten(&mut self) -> _PwaitenW {
+                _PwaitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "FIFO status and interrupt register 4" ]
+    pub struct Sr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "FIFO status and interrupt register 4" ]
+    pub mod sr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FemptR {
+            bits: u8,
+        }
+        impl FemptR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfenR {
+            bits: u8,
+        }
+        impl IfenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlenR {
+            bits: u8,
+        }
+        impl IlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrenR {
+            bits: u8,
+        }
+        impl IrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfsR {
+            bits: u8,
+        }
+        impl IfsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IlsR {
+            bits: u8,
+        }
+        impl IlsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrsR {
+            bits: u8,
+        }
+        impl IrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IlsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IlsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - FEMPT" ]
+            # [ inline ( always ) ]
+            pub fn fempt(&self) -> FemptR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FemptR { bits }
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&self) -> IfenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfenR { bits }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&self) -> IlenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlenR { bits }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&self) -> IrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrenR { bits }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&self) -> IfsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfsR { bits }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&self) -> IlsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IlsR { bits }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&self) -> IrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 64 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - IFEN" ]
+            # [ inline ( always ) ]
+            pub fn ifen(&mut self) -> _IfenW {
+                _IfenW { w: self }
+            }
+            # [ doc = "Bit 4 - ILEN" ]
+            # [ inline ( always ) ]
+            pub fn ilen(&mut self) -> _IlenW {
+                _IlenW { w: self }
+            }
+            # [ doc = "Bit 3 - IREN" ]
+            # [ inline ( always ) ]
+            pub fn iren(&mut self) -> _IrenW {
+                _IrenW { w: self }
+            }
+            # [ doc = "Bit 2 - IFS" ]
+            # [ inline ( always ) ]
+            pub fn ifs(&mut self) -> _IfsW {
+                _IfsW { w: self }
+            }
+            # [ doc = "Bit 1 - ILS" ]
+            # [ inline ( always ) ]
+            pub fn ils(&mut self) -> _IlsW {
+                _IlsW { w: self }
+            }
+            # [ doc = "Bit 0 - IRS" ]
+            # [ inline ( always ) ]
+            pub fn irs(&mut self) -> _IrsW {
+                _IrsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Common memory space timing register 4" ]
+    pub struct Pmem4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Common memory space timing register 4" ]
+    pub mod pmem4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pmem4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemhizxR {
+            bits: u8,
+        }
+        impl MemhizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemholdxR {
+            bits: u8,
+        }
+        impl MemholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemwaitxR {
+            bits: u8,
+        }
+        impl MemwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MemsetxR {
+            bits: u8,
+        }
+        impl MemsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemhizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemhizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&self) -> MemhizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemhizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&self) -> MemholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&self) -> MemwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&self) -> MemsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MemsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - MEMHIZx" ]
+            # [ inline ( always ) ]
+            pub fn memhizx(&mut self) -> _MemhizxW {
+                _MemhizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - MEMHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn memholdx(&mut self) -> _MemholdxW {
+                _MemholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - MEMWAITx" ]
+            # [ inline ( always ) ]
+            pub fn memwaitx(&mut self) -> _MemwaitxW {
+                _MemwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - MEMSETx" ]
+            # [ inline ( always ) ]
+            pub fn memsetx(&mut self) -> _MemsetxW {
+                _MemsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "Attribute memory space timing register 4" ]
+    pub struct Patt4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Attribute memory space timing register 4" ]
+    pub mod patt4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Patt4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AtthizxR {
+            bits: u8,
+        }
+        impl AtthizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttholdxR {
+            bits: u8,
+        }
+        impl AttholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttwaitxR {
+            bits: u8,
+        }
+        impl AttwaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AttsetxR {
+            bits: u8,
+        }
+        impl AttsetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AtthizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AtthizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttwaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttwaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AttsetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AttsetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&self) -> AtthizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AtthizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&self) -> AttholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&self) -> AttwaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttwaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&self) -> AttsetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AttsetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - ATTHIZx" ]
+            # [ inline ( always ) ]
+            pub fn atthizx(&mut self) -> _AtthizxW {
+                _AtthizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - ATTHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn attholdx(&mut self) -> _AttholdxW {
+                _AttholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - ATTWAITx" ]
+            # [ inline ( always ) ]
+            pub fn attwaitx(&mut self) -> _AttwaitxW {
+                _AttwaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - ATTSETx" ]
+            # [ inline ( always ) ]
+            pub fn attsetx(&mut self) -> _AttsetxW {
+                _AttsetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "I/O space timing register 4" ]
+    pub struct Pio4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "I/O space timing register 4" ]
+    pub mod pio4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pio4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IohizxR {
+            bits: u8,
+        }
+        impl IohizxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IoholdxR {
+            bits: u8,
+        }
+        impl IoholdxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IowaitxR {
+            bits: u8,
+        }
+        impl IowaitxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IosetxR {
+            bits: u8,
+        }
+        impl IosetxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IohizxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IohizxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IoholdxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IoholdxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IowaitxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IowaitxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IosetxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IosetxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - IOHIZx" ]
+            # [ inline ( always ) ]
+            pub fn iohizx(&self) -> IohizxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IohizxR { bits }
+            }
+            # [ doc = "Bits 16:23 - IOHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn ioholdx(&self) -> IoholdxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IoholdxR { bits }
+            }
+            # [ doc = "Bits 8:15 - IOWAITx" ]
+            # [ inline ( always ) ]
+            pub fn iowaitx(&self) -> IowaitxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IowaitxR { bits }
+            }
+            # [ doc = "Bits 0:7 - IOSETx" ]
+            # [ inline ( always ) ]
+            pub fn iosetx(&self) -> IosetxR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IosetxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4244438268 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - IOHIZx" ]
+            # [ inline ( always ) ]
+            pub fn iohizx(&mut self) -> _IohizxW {
+                _IohizxW { w: self }
+            }
+            # [ doc = "Bits 16:23 - IOHOLDx" ]
+            # [ inline ( always ) ]
+            pub fn ioholdx(&mut self) -> _IoholdxW {
+                _IoholdxW { w: self }
+            }
+            # [ doc = "Bits 8:15 - IOWAITx" ]
+            # [ inline ( always ) ]
+            pub fn iowaitx(&mut self) -> _IowaitxW {
+                _IowaitxW { w: self }
+            }
+            # [ doc = "Bits 0:7 - IOSETx" ]
+            # [ inline ( always ) ]
+            pub fn iosetx(&mut self) -> _IosetxW {
+                _IosetxW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 1" ]
+    pub struct Bwtr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 1" ]
+    pub mod bwtr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bwtr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 268435455 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 2" ]
+    pub struct Bwtr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 2" ]
+    pub mod bwtr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bwtr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 268435455 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 3" ]
+    pub struct Bwtr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 3" ]
+    pub mod bwtr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bwtr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 268435455 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 4" ]
+    pub struct Bwtr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SRAM/NOR-Flash write timing registers 4" ]
+    pub mod bwtr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bwtr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AccmodR {
+            bits: u8,
+        }
+        impl AccmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlatR {
+            bits: u8,
+        }
+        impl DatlatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatastR {
+            bits: u8,
+        }
+        impl DatastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddhldR {
+            bits: u8,
+        }
+        impl AddhldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddsetR {
+            bits: u8,
+        }
+        impl AddsetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AccmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AccmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddhldW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddhldW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddsetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddsetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&self) -> AccmodR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AccmodR { bits }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&self) -> DatlatR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlatR { bits }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&self) -> DatastR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatastR { bits }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&self) -> AddhldR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddhldR { bits }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&self) -> AddsetR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddsetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 268435455 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:29 - ACCMOD" ]
+            # [ inline ( always ) ]
+            pub fn accmod(&mut self) -> _AccmodW {
+                _AccmodW { w: self }
+            }
+            # [ doc = "Bits 24:27 - DATLAT" ]
+            # [ inline ( always ) ]
+            pub fn datlat(&mut self) -> _DatlatW {
+                _DatlatW { w: self }
+            }
+            # [ doc = "Bits 20:23 - CLKDIV" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATAST" ]
+            # [ inline ( always ) ]
+            pub fn datast(&mut self) -> _DatastW {
+                _DatastW { w: self }
+            }
+            # [ doc = "Bits 4:7 - ADDHLD" ]
+            # [ inline ( always ) ]
+            pub fn addhld(&mut self) -> _AddhldW {
+                _AddhldW { w: self }
+            }
+            # [ doc = "Bits 0:3 - ADDSET" ]
+            # [ inline ( always ) ]
+            pub fn addset(&mut self) -> _AddsetW {
+                _AddsetW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Flexible static memory controller" ]
+pub struct Fsmc {
+    register_block: fsmc::RegisterBlock,
+}
+impl Deref for Fsmc {
+    type Target = fsmc::RegisterBlock;
+    fn deref(&self) -> &fsmc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Debug support" ]
+pub const DBG: Peripheral<Dbg> = unsafe { Peripheral::new(3758366720) };
+# [ doc = "Debug support" ]
+pub mod dbg {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - IDCODE" ]
+        pub dbgmcu_idcode: DbgmcuIdcode,
+        # [ doc = "0x04 - Control Register" ]
+        pub dbgmcu_cr: DbgmcuCr,
+        # [ doc = "0x08 - Debug MCU APB1 Freeze registe" ]
+        pub dbgmcu_apb1_fz: DbgmcuApb1Fz,
+        # [ doc = "0x0c - Debug MCU APB2 Freeze registe" ]
+        pub dbgmcu_apb2_fz: DbgmcuApb2Fz,
+    }
+    # [ doc = "IDCODE" ]
+    pub struct DbgmcuIdcode {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "IDCODE" ]
+    pub mod dbgmcu_idcode {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::DbgmcuIdcode {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DevIdR {
+            bits: u16,
+        }
+        impl DevIdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RevIdR {
+            bits: u16,
+        }
+        impl RevIdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - DEV_ID" ]
+            # [ inline ( always ) ]
+            pub fn dev_id(&self) -> DevIdR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DevIdR { bits }
+            }
+            # [ doc = "Bits 16:31 - REV_ID" ]
+            # [ inline ( always ) ]
+            pub fn rev_id(&self) -> RevIdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RevIdR { bits }
+            }
+        }
+    }
+    # [ doc = "Control Register" ]
+    pub struct DbgmcuCr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control Register" ]
+    pub mod dbgmcu_cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::DbgmcuCr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgSleepR {
+            bits: u8,
+        }
+        impl DbgSleepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgStopR {
+            bits: u8,
+        }
+        impl DbgStopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgStandbyR {
+            bits: u8,
+        }
+        impl DbgStandbyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TraceIoenR {
+            bits: u8,
+        }
+        impl TraceIoenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TraceModeR {
+            bits: u8,
+        }
+        impl TraceModeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgI2c2SmbusTimeoutR {
+            bits: u8,
+        }
+        impl DbgI2c2SmbusTimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim8StopR {
+            bits: u8,
+        }
+        impl DbgTim8StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim5StopR {
+            bits: u8,
+        }
+        impl DbgTim5StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim6StopR {
+            bits: u8,
+        }
+        impl DbgTim6StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim7StopR {
+            bits: u8,
+        }
+        impl DbgTim7StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgSleepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgSleepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgStopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgStopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgStandbyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgStandbyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TraceIoenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TraceIoenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TraceModeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TraceModeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgI2c2SmbusTimeoutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgI2c2SmbusTimeoutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim8StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim8StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim5StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim5StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim6StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim6StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim7StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim7StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - DBG_SLEEP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_sleep(&self) -> DbgSleepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgSleepR { bits }
+            }
+            # [ doc = "Bit 1 - DBG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_stop(&self) -> DbgStopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgStopR { bits }
+            }
+            # [ doc = "Bit 2 - DBG_STANDBY" ]
+            # [ inline ( always ) ]
+            pub fn dbg_standby(&self) -> DbgStandbyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgStandbyR { bits }
+            }
+            # [ doc = "Bit 5 - TRACE_IOEN" ]
+            # [ inline ( always ) ]
+            pub fn trace_ioen(&self) -> TraceIoenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TraceIoenR { bits }
+            }
+            # [ doc = "Bits 6:7 - TRACE_MODE" ]
+            # [ inline ( always ) ]
+            pub fn trace_mode(&self) -> TraceModeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TraceModeR { bits }
+            }
+            # [ doc = "Bit 16 - DBG_I2C2_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_i2c2_smbus_timeout(&self) -> DbgI2c2SmbusTimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgI2c2SmbusTimeoutR { bits }
+            }
+            # [ doc = "Bit 17 - DBG_TIM8_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim8_stop(&self) -> DbgTim8StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim8StopR { bits }
+            }
+            # [ doc = "Bit 18 - DBG_TIM5_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim5_stop(&self) -> DbgTim5StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim5StopR { bits }
+            }
+            # [ doc = "Bit 19 - DBG_TIM6_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim6_stop(&self) -> DbgTim6StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim6StopR { bits }
+            }
+            # [ doc = "Bit 20 - DBG_TIM7_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim7_stop(&self) -> DbgTim7StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim7StopR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - DBG_SLEEP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_sleep(&mut self) -> _DbgSleepW {
+                _DbgSleepW { w: self }
+            }
+            # [ doc = "Bit 1 - DBG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_stop(&mut self) -> _DbgStopW {
+                _DbgStopW { w: self }
+            }
+            # [ doc = "Bit 2 - DBG_STANDBY" ]
+            # [ inline ( always ) ]
+            pub fn dbg_standby(&mut self) -> _DbgStandbyW {
+                _DbgStandbyW { w: self }
+            }
+            # [ doc = "Bit 5 - TRACE_IOEN" ]
+            # [ inline ( always ) ]
+            pub fn trace_ioen(&mut self) -> _TraceIoenW {
+                _TraceIoenW { w: self }
+            }
+            # [ doc = "Bits 6:7 - TRACE_MODE" ]
+            # [ inline ( always ) ]
+            pub fn trace_mode(&mut self) -> _TraceModeW {
+                _TraceModeW { w: self }
+            }
+            # [ doc = "Bit 16 - DBG_I2C2_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_i2c2_smbus_timeout(&mut self) -> _DbgI2c2SmbusTimeoutW {
+                _DbgI2c2SmbusTimeoutW { w: self }
+            }
+            # [ doc = "Bit 17 - DBG_TIM8_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim8_stop(&mut self) -> _DbgTim8StopW {
+                _DbgTim8StopW { w: self }
+            }
+            # [ doc = "Bit 18 - DBG_TIM5_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim5_stop(&mut self) -> _DbgTim5StopW {
+                _DbgTim5StopW { w: self }
+            }
+            # [ doc = "Bit 19 - DBG_TIM6_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim6_stop(&mut self) -> _DbgTim6StopW {
+                _DbgTim6StopW { w: self }
+            }
+            # [ doc = "Bit 20 - DBG_TIM7_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim7_stop(&mut self) -> _DbgTim7StopW {
+                _DbgTim7StopW { w: self }
+            }
+        }
+    }
+    # [ doc = "Debug MCU APB1 Freeze registe" ]
+    pub struct DbgmcuApb1Fz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Debug MCU APB1 Freeze registe" ]
+    pub mod dbgmcu_apb1_fz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::DbgmcuApb1Fz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim2StopR {
+            bits: u8,
+        }
+        impl DbgTim2StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim3StopR {
+            bits: u8,
+        }
+        impl DbgTim3StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim4StopR {
+            bits: u8,
+        }
+        impl DbgTim4StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim5StopR {
+            bits: u8,
+        }
+        impl DbgTim5StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim6StopR {
+            bits: u8,
+        }
+        impl DbgTim6StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim7StopR {
+            bits: u8,
+        }
+        impl DbgTim7StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim12StopR {
+            bits: u8,
+        }
+        impl DbgTim12StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim13StopR {
+            bits: u8,
+        }
+        impl DbgTim13StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim14StopR {
+            bits: u8,
+        }
+        impl DbgTim14StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgWwdgStopR {
+            bits: u8,
+        }
+        impl DbgWwdgStopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgIwdegStopR {
+            bits: u8,
+        }
+        impl DbgIwdegStopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgJ2c1SmbusTimeoutR {
+            bits: u8,
+        }
+        impl DbgJ2c1SmbusTimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgJ2c2SmbusTimeoutR {
+            bits: u8,
+        }
+        impl DbgJ2c2SmbusTimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgJ2c3smbusTimeoutR {
+            bits: u8,
+        }
+        impl DbgJ2c3smbusTimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgCan1StopR {
+            bits: u8,
+        }
+        impl DbgCan1StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgCan2StopR {
+            bits: u8,
+        }
+        impl DbgCan2StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim2StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim2StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim3StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim3StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim4StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim4StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim5StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim5StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim6StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim6StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim7StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim7StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim12StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim12StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim13StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim13StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim14StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim14StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgWwdgStopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgWwdgStopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgIwdegStopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgIwdegStopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgJ2c1SmbusTimeoutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgJ2c1SmbusTimeoutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgJ2c2SmbusTimeoutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgJ2c2SmbusTimeoutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgJ2c3smbusTimeoutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgJ2c3smbusTimeoutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgCan1StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgCan1StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgCan2StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgCan2StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - DBG_TIM2_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim2_stop(&self) -> DbgTim2StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim2StopR { bits }
+            }
+            # [ doc = "Bit 1 - DBG_TIM3 _STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim3_stop(&self) -> DbgTim3StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim3StopR { bits }
+            }
+            # [ doc = "Bit 2 - DBG_TIM4_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim4_stop(&self) -> DbgTim4StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim4StopR { bits }
+            }
+            # [ doc = "Bit 3 - DBG_TIM5_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim5_stop(&self) -> DbgTim5StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim5StopR { bits }
+            }
+            # [ doc = "Bit 4 - DBG_TIM6_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim6_stop(&self) -> DbgTim6StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim6StopR { bits }
+            }
+            # [ doc = "Bit 5 - DBG_TIM7_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim7_stop(&self) -> DbgTim7StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim7StopR { bits }
+            }
+            # [ doc = "Bit 6 - DBG_TIM12_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim12_stop(&self) -> DbgTim12StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim12StopR { bits }
+            }
+            # [ doc = "Bit 7 - DBG_TIM13_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim13_stop(&self) -> DbgTim13StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim13StopR { bits }
+            }
+            # [ doc = "Bit 8 - DBG_TIM14_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim14_stop(&self) -> DbgTim14StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim14StopR { bits }
+            }
+            # [ doc = "Bit 11 - DBG_WWDG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_wwdg_stop(&self) -> DbgWwdgStopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgWwdgStopR { bits }
+            }
+            # [ doc = "Bit 12 - DBG_IWDEG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_iwdeg_stop(&self) -> DbgIwdegStopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgIwdegStopR { bits }
+            }
+            # [ doc = "Bit 21 - DBG_J2C1_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c1_smbus_timeout(&self) -> DbgJ2c1SmbusTimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgJ2c1SmbusTimeoutR { bits }
+            }
+            # [ doc = "Bit 22 - DBG_J2C2_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c2_smbus_timeout(&self) -> DbgJ2c2SmbusTimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgJ2c2SmbusTimeoutR { bits }
+            }
+            # [ doc = "Bit 23 - DBG_J2C3SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c3smbus_timeout(&self) -> DbgJ2c3smbusTimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgJ2c3smbusTimeoutR { bits }
+            }
+            # [ doc = "Bit 25 - DBG_CAN1_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_can1_stop(&self) -> DbgCan1StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgCan1StopR { bits }
+            }
+            # [ doc = "Bit 26 - DBG_CAN2_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_can2_stop(&self) -> DbgCan2StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgCan2StopR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - DBG_TIM2_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim2_stop(&mut self) -> _DbgTim2StopW {
+                _DbgTim2StopW { w: self }
+            }
+            # [ doc = "Bit 1 - DBG_TIM3 _STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim3_stop(&mut self) -> _DbgTim3StopW {
+                _DbgTim3StopW { w: self }
+            }
+            # [ doc = "Bit 2 - DBG_TIM4_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim4_stop(&mut self) -> _DbgTim4StopW {
+                _DbgTim4StopW { w: self }
+            }
+            # [ doc = "Bit 3 - DBG_TIM5_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim5_stop(&mut self) -> _DbgTim5StopW {
+                _DbgTim5StopW { w: self }
+            }
+            # [ doc = "Bit 4 - DBG_TIM6_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim6_stop(&mut self) -> _DbgTim6StopW {
+                _DbgTim6StopW { w: self }
+            }
+            # [ doc = "Bit 5 - DBG_TIM7_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim7_stop(&mut self) -> _DbgTim7StopW {
+                _DbgTim7StopW { w: self }
+            }
+            # [ doc = "Bit 6 - DBG_TIM12_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim12_stop(&mut self) -> _DbgTim12StopW {
+                _DbgTim12StopW { w: self }
+            }
+            # [ doc = "Bit 7 - DBG_TIM13_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim13_stop(&mut self) -> _DbgTim13StopW {
+                _DbgTim13StopW { w: self }
+            }
+            # [ doc = "Bit 8 - DBG_TIM14_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim14_stop(&mut self) -> _DbgTim14StopW {
+                _DbgTim14StopW { w: self }
+            }
+            # [ doc = "Bit 11 - DBG_WWDG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_wwdg_stop(&mut self) -> _DbgWwdgStopW {
+                _DbgWwdgStopW { w: self }
+            }
+            # [ doc = "Bit 12 - DBG_IWDEG_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_iwdeg_stop(&mut self) -> _DbgIwdegStopW {
+                _DbgIwdegStopW { w: self }
+            }
+            # [ doc = "Bit 21 - DBG_J2C1_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c1_smbus_timeout(&mut self) -> _DbgJ2c1SmbusTimeoutW {
+                _DbgJ2c1SmbusTimeoutW { w: self }
+            }
+            # [ doc = "Bit 22 - DBG_J2C2_SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c2_smbus_timeout(&mut self) -> _DbgJ2c2SmbusTimeoutW {
+                _DbgJ2c2SmbusTimeoutW { w: self }
+            }
+            # [ doc = "Bit 23 - DBG_J2C3SMBUS_TIMEOUT" ]
+            # [ inline ( always ) ]
+            pub fn dbg_j2c3smbus_timeout(&mut self) -> _DbgJ2c3smbusTimeoutW {
+                _DbgJ2c3smbusTimeoutW { w: self }
+            }
+            # [ doc = "Bit 25 - DBG_CAN1_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_can1_stop(&mut self) -> _DbgCan1StopW {
+                _DbgCan1StopW { w: self }
+            }
+            # [ doc = "Bit 26 - DBG_CAN2_STOP" ]
+            # [ inline ( always ) ]
+            pub fn dbg_can2_stop(&mut self) -> _DbgCan2StopW {
+                _DbgCan2StopW { w: self }
+            }
+        }
+    }
+    # [ doc = "Debug MCU APB2 Freeze registe" ]
+    pub struct DbgmcuApb2Fz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Debug MCU APB2 Freeze registe" ]
+    pub mod dbgmcu_apb2_fz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::DbgmcuApb2Fz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim1StopR {
+            bits: u8,
+        }
+        impl DbgTim1StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim8StopR {
+            bits: u8,
+        }
+        impl DbgTim8StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim9StopR {
+            bits: u8,
+        }
+        impl DbgTim9StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim10StopR {
+            bits: u8,
+        }
+        impl DbgTim10StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbgTim11StopR {
+            bits: u8,
+        }
+        impl DbgTim11StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim1StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim1StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim8StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim8StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim9StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim9StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim10StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim10StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbgTim11StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbgTim11StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - TIM1 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim1_stop(&self) -> DbgTim1StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim1StopR { bits }
+            }
+            # [ doc = "Bit 1 - TIM8 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim8_stop(&self) -> DbgTim8StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim8StopR { bits }
+            }
+            # [ doc = "Bit 16 - TIM9 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim9_stop(&self) -> DbgTim9StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim9StopR { bits }
+            }
+            # [ doc = "Bit 17 - TIM10 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim10_stop(&self) -> DbgTim10StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim10StopR { bits }
+            }
+            # [ doc = "Bit 18 - TIM11 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim11_stop(&self) -> DbgTim11StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbgTim11StopR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - TIM1 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim1_stop(&mut self) -> _DbgTim1StopW {
+                _DbgTim1StopW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM8 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim8_stop(&mut self) -> _DbgTim8StopW {
+                _DbgTim8StopW { w: self }
+            }
+            # [ doc = "Bit 16 - TIM9 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim9_stop(&mut self) -> _DbgTim9StopW {
+                _DbgTim9StopW { w: self }
+            }
+            # [ doc = "Bit 17 - TIM10 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim10_stop(&mut self) -> _DbgTim10StopW {
+                _DbgTim10StopW { w: self }
+            }
+            # [ doc = "Bit 18 - TIM11 counter stopped when core is halted" ]
+            # [ inline ( always ) ]
+            pub fn dbg_tim11_stop(&mut self) -> _DbgTim11StopW {
+                _DbgTim11StopW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Debug support" ]
+pub struct Dbg {
+    register_block: dbg::RegisterBlock,
+}
+impl Deref for Dbg {
+    type Target = dbg::RegisterBlock;
+    fn deref(&self) -> &dbg::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "DMA controller" ]
+pub const DMA2: Peripheral<Dma2> = unsafe { Peripheral::new(1073898496) };
+# [ doc = "DMA controller" ]
+pub mod dma2 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - low interrupt status register" ]
+        pub lisr: Lisr,
+        # [ doc = "0x04 - high interrupt status register" ]
+        pub hisr: Hisr,
+        # [ doc = "0x08 - low interrupt flag clear register" ]
+        pub lifcr: Lifcr,
+        # [ doc = "0x0c - high interrupt flag clear register" ]
+        pub hifcr: Hifcr,
+        # [ doc = "0x10 - stream x configuration register" ]
+        pub s0cr: S0cr,
+        # [ doc = "0x14 - stream x number of data register" ]
+        pub s0ndtr: S0ndtr,
+        # [ doc = "0x18 - stream x peripheral address register" ]
+        pub s0par: S0par,
+        # [ doc = "0x1c - stream x memory 0 address register" ]
+        pub s0m0ar: S0m0ar,
+        # [ doc = "0x20 - stream x memory 1 address register" ]
+        pub s0m1ar: S0m1ar,
+        # [ doc = "0x24 - stream x FIFO control register" ]
+        pub s0fcr: S0fcr,
+        # [ doc = "0x28 - stream x configuration register" ]
+        pub s1cr: S1cr,
+        # [ doc = "0x2c - stream x number of data register" ]
+        pub s1ndtr: S1ndtr,
+        # [ doc = "0x30 - stream x peripheral address register" ]
+        pub s1par: S1par,
+        # [ doc = "0x34 - stream x memory 0 address register" ]
+        pub s1m0ar: S1m0ar,
+        # [ doc = "0x38 - stream x memory 1 address register" ]
+        pub s1m1ar: S1m1ar,
+        # [ doc = "0x3c - stream x FIFO control register" ]
+        pub s1fcr: S1fcr,
+        # [ doc = "0x40 - stream x configuration register" ]
+        pub s2cr: S2cr,
+        # [ doc = "0x44 - stream x number of data register" ]
+        pub s2ndtr: S2ndtr,
+        # [ doc = "0x48 - stream x peripheral address register" ]
+        pub s2par: S2par,
+        # [ doc = "0x4c - stream x memory 0 address register" ]
+        pub s2m0ar: S2m0ar,
+        # [ doc = "0x50 - stream x memory 1 address register" ]
+        pub s2m1ar: S2m1ar,
+        # [ doc = "0x54 - stream x FIFO control register" ]
+        pub s2fcr: S2fcr,
+        # [ doc = "0x58 - stream x configuration register" ]
+        pub s3cr: S3cr,
+        # [ doc = "0x5c - stream x number of data register" ]
+        pub s3ndtr: S3ndtr,
+        # [ doc = "0x60 - stream x peripheral address register" ]
+        pub s3par: S3par,
+        # [ doc = "0x64 - stream x memory 0 address register" ]
+        pub s3m0ar: S3m0ar,
+        # [ doc = "0x68 - stream x memory 1 address register" ]
+        pub s3m1ar: S3m1ar,
+        # [ doc = "0x6c - stream x FIFO control register" ]
+        pub s3fcr: S3fcr,
+        # [ doc = "0x70 - stream x configuration register" ]
+        pub s4cr: S4cr,
+        # [ doc = "0x74 - stream x number of data register" ]
+        pub s4ndtr: S4ndtr,
+        # [ doc = "0x78 - stream x peripheral address register" ]
+        pub s4par: S4par,
+        # [ doc = "0x7c - stream x memory 0 address register" ]
+        pub s4m0ar: S4m0ar,
+        # [ doc = "0x80 - stream x memory 1 address register" ]
+        pub s4m1ar: S4m1ar,
+        # [ doc = "0x84 - stream x FIFO control register" ]
+        pub s4fcr: S4fcr,
+        # [ doc = "0x88 - stream x configuration register" ]
+        pub s5cr: S5cr,
+        # [ doc = "0x8c - stream x number of data register" ]
+        pub s5ndtr: S5ndtr,
+        # [ doc = "0x90 - stream x peripheral address register" ]
+        pub s5par: S5par,
+        # [ doc = "0x94 - stream x memory 0 address register" ]
+        pub s5m0ar: S5m0ar,
+        # [ doc = "0x98 - stream x memory 1 address register" ]
+        pub s5m1ar: S5m1ar,
+        # [ doc = "0x9c - stream x FIFO control register" ]
+        pub s5fcr: S5fcr,
+        # [ doc = "0xa0 - stream x configuration register" ]
+        pub s6cr: S6cr,
+        # [ doc = "0xa4 - stream x number of data register" ]
+        pub s6ndtr: S6ndtr,
+        # [ doc = "0xa8 - stream x peripheral address register" ]
+        pub s6par: S6par,
+        # [ doc = "0xac - stream x memory 0 address register" ]
+        pub s6m0ar: S6m0ar,
+        # [ doc = "0xb0 - stream x memory 1 address register" ]
+        pub s6m1ar: S6m1ar,
+        # [ doc = "0xb4 - stream x FIFO control register" ]
+        pub s6fcr: S6fcr,
+        # [ doc = "0xb8 - stream x configuration register" ]
+        pub s7cr: S7cr,
+        # [ doc = "0xbc - stream x number of data register" ]
+        pub s7ndtr: S7ndtr,
+        # [ doc = "0xc0 - stream x peripheral address register" ]
+        pub s7par: S7par,
+        # [ doc = "0xc4 - stream x memory 0 address register" ]
+        pub s7m0ar: S7m0ar,
+        # [ doc = "0xc8 - stream x memory 1 address register" ]
+        pub s7m1ar: S7m1ar,
+        # [ doc = "0xcc - stream x FIFO control register" ]
+        pub s7fcr: S7fcr,
+    }
+    # [ doc = "low interrupt status register" ]
+    pub struct Lisr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "low interrupt status register" ]
+    pub mod lisr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Lisr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif3R {
+            bits: u8,
+        }
+        impl Tcif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif3R {
+            bits: u8,
+        }
+        impl Htif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif3R {
+            bits: u8,
+        }
+        impl Teif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif3R {
+            bits: u8,
+        }
+        impl Dmeif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif3R {
+            bits: u8,
+        }
+        impl Feif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif2R {
+            bits: u8,
+        }
+        impl Tcif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif2R {
+            bits: u8,
+        }
+        impl Htif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif2R {
+            bits: u8,
+        }
+        impl Teif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif2R {
+            bits: u8,
+        }
+        impl Dmeif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif2R {
+            bits: u8,
+        }
+        impl Feif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif1R {
+            bits: u8,
+        }
+        impl Tcif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif1R {
+            bits: u8,
+        }
+        impl Htif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif1R {
+            bits: u8,
+        }
+        impl Teif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif1R {
+            bits: u8,
+        }
+        impl Dmeif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif1R {
+            bits: u8,
+        }
+        impl Feif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif0R {
+            bits: u8,
+        }
+        impl Tcif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif0R {
+            bits: u8,
+        }
+        impl Htif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif0R {
+            bits: u8,
+        }
+        impl Teif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif0R {
+            bits: u8,
+        }
+        impl Dmeif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif0R {
+            bits: u8,
+        }
+        impl Feif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - Stream x transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn tcif3(&self) -> Tcif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif3R { bits }
+            }
+            # [ doc = "Bit 26 - Stream x half transfer interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn htif3(&self) -> Htif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif3R { bits }
+            }
+            # [ doc = "Bit 25 - Stream x transfer error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn teif3(&self) -> Teif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif3R { bits }
+            }
+            # [ doc = "Bit 24 - Stream x direct mode error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif3(&self) -> Dmeif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif3R { bits }
+            }
+            # [ doc = "Bit 22 - Stream x FIFO error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn feif3(&self) -> Feif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif3R { bits }
+            }
+            # [ doc = "Bit 21 - Stream x transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn tcif2(&self) -> Tcif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif2R { bits }
+            }
+            # [ doc = "Bit 20 - Stream x half transfer interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn htif2(&self) -> Htif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif2R { bits }
+            }
+            # [ doc = "Bit 19 - Stream x transfer error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn teif2(&self) -> Teif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif2R { bits }
+            }
+            # [ doc = "Bit 18 - Stream x direct mode error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif2(&self) -> Dmeif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif2R { bits }
+            }
+            # [ doc = "Bit 16 - Stream x FIFO error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn feif2(&self) -> Feif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif2R { bits }
+            }
+            # [ doc = "Bit 11 - Stream x transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn tcif1(&self) -> Tcif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif1R { bits }
+            }
+            # [ doc = "Bit 10 - Stream x half transfer interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn htif1(&self) -> Htif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif1R { bits }
+            }
+            # [ doc = "Bit 9 - Stream x transfer error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn teif1(&self) -> Teif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif1R { bits }
+            }
+            # [ doc = "Bit 8 - Stream x direct mode error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif1(&self) -> Dmeif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif1R { bits }
+            }
+            # [ doc = "Bit 6 - Stream x FIFO error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn feif1(&self) -> Feif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif1R { bits }
+            }
+            # [ doc = "Bit 5 - Stream x transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn tcif0(&self) -> Tcif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif0R { bits }
+            }
+            # [ doc = "Bit 4 - Stream x half transfer interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn htif0(&self) -> Htif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif0R { bits }
+            }
+            # [ doc = "Bit 3 - Stream x transfer error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn teif0(&self) -> Teif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif0R { bits }
+            }
+            # [ doc = "Bit 2 - Stream x direct mode error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif0(&self) -> Dmeif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif0R { bits }
+            }
+            # [ doc = "Bit 0 - Stream x FIFO error interrupt flag (x=3..0)" ]
+            # [ inline ( always ) ]
+            pub fn feif0(&self) -> Feif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif0R { bits }
+            }
+        }
+    }
+    # [ doc = "high interrupt status register" ]
+    pub struct Hisr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "high interrupt status register" ]
+    pub mod hisr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Hisr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif7R {
+            bits: u8,
+        }
+        impl Tcif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif7R {
+            bits: u8,
+        }
+        impl Htif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif7R {
+            bits: u8,
+        }
+        impl Teif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif7R {
+            bits: u8,
+        }
+        impl Dmeif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif7R {
+            bits: u8,
+        }
+        impl Feif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif6R {
+            bits: u8,
+        }
+        impl Tcif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif6R {
+            bits: u8,
+        }
+        impl Htif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif6R {
+            bits: u8,
+        }
+        impl Teif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif6R {
+            bits: u8,
+        }
+        impl Dmeif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif6R {
+            bits: u8,
+        }
+        impl Feif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif5R {
+            bits: u8,
+        }
+        impl Tcif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif5R {
+            bits: u8,
+        }
+        impl Htif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif5R {
+            bits: u8,
+        }
+        impl Teif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif5R {
+            bits: u8,
+        }
+        impl Dmeif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif5R {
+            bits: u8,
+        }
+        impl Feif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tcif4R {
+            bits: u8,
+        }
+        impl Tcif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Htif4R {
+            bits: u8,
+        }
+        impl Htif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Teif4R {
+            bits: u8,
+        }
+        impl Teif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmeif4R {
+            bits: u8,
+        }
+        impl Dmeif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Feif4R {
+            bits: u8,
+        }
+        impl Feif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - Stream x transfer complete interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn tcif7(&self) -> Tcif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif7R { bits }
+            }
+            # [ doc = "Bit 26 - Stream x half transfer interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn htif7(&self) -> Htif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif7R { bits }
+            }
+            # [ doc = "Bit 25 - Stream x transfer error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn teif7(&self) -> Teif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif7R { bits }
+            }
+            # [ doc = "Bit 24 - Stream x direct mode error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif7(&self) -> Dmeif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif7R { bits }
+            }
+            # [ doc = "Bit 22 - Stream x FIFO error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn feif7(&self) -> Feif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif7R { bits }
+            }
+            # [ doc = "Bit 21 - Stream x transfer complete interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn tcif6(&self) -> Tcif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif6R { bits }
+            }
+            # [ doc = "Bit 20 - Stream x half transfer interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn htif6(&self) -> Htif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif6R { bits }
+            }
+            # [ doc = "Bit 19 - Stream x transfer error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn teif6(&self) -> Teif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif6R { bits }
+            }
+            # [ doc = "Bit 18 - Stream x direct mode error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif6(&self) -> Dmeif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif6R { bits }
+            }
+            # [ doc = "Bit 16 - Stream x FIFO error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn feif6(&self) -> Feif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif6R { bits }
+            }
+            # [ doc = "Bit 11 - Stream x transfer complete interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn tcif5(&self) -> Tcif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif5R { bits }
+            }
+            # [ doc = "Bit 10 - Stream x half transfer interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn htif5(&self) -> Htif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif5R { bits }
+            }
+            # [ doc = "Bit 9 - Stream x transfer error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn teif5(&self) -> Teif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif5R { bits }
+            }
+            # [ doc = "Bit 8 - Stream x direct mode error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif5(&self) -> Dmeif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif5R { bits }
+            }
+            # [ doc = "Bit 6 - Stream x FIFO error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn feif5(&self) -> Feif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif5R { bits }
+            }
+            # [ doc = "Bit 5 - Stream x transfer complete interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn tcif4(&self) -> Tcif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tcif4R { bits }
+            }
+            # [ doc = "Bit 4 - Stream x half transfer interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn htif4(&self) -> Htif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Htif4R { bits }
+            }
+            # [ doc = "Bit 3 - Stream x transfer error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn teif4(&self) -> Teif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Teif4R { bits }
+            }
+            # [ doc = "Bit 2 - Stream x direct mode error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn dmeif4(&self) -> Dmeif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmeif4R { bits }
+            }
+            # [ doc = "Bit 0 - Stream x FIFO error interrupt flag (x=7..4)" ]
+            # [ inline ( always ) ]
+            pub fn feif4(&self) -> Feif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Feif4R { bits }
+            }
+        }
+    }
+    # [ doc = "low interrupt flag clear register" ]
+    pub struct Lifcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "low interrupt flag clear register" ]
+    pub mod lifcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Lifcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif3R {
+            bits: u8,
+        }
+        impl Ctcif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif3R {
+            bits: u8,
+        }
+        impl Chtif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif3R {
+            bits: u8,
+        }
+        impl Cteif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif3R {
+            bits: u8,
+        }
+        impl Cdmeif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif3R {
+            bits: u8,
+        }
+        impl Cfeif3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif2R {
+            bits: u8,
+        }
+        impl Ctcif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif2R {
+            bits: u8,
+        }
+        impl Chtif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif2R {
+            bits: u8,
+        }
+        impl Cteif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif2R {
+            bits: u8,
+        }
+        impl Cdmeif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif2R {
+            bits: u8,
+        }
+        impl Cfeif2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif1R {
+            bits: u8,
+        }
+        impl Ctcif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif1R {
+            bits: u8,
+        }
+        impl Chtif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif1R {
+            bits: u8,
+        }
+        impl Cteif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif1R {
+            bits: u8,
+        }
+        impl Cdmeif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif1R {
+            bits: u8,
+        }
+        impl Cfeif1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif0R {
+            bits: u8,
+        }
+        impl Ctcif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif0R {
+            bits: u8,
+        }
+        impl Chtif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif0R {
+            bits: u8,
+        }
+        impl Cteif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif0R {
+            bits: u8,
+        }
+        impl Cdmeif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif0R {
+            bits: u8,
+        }
+        impl Cfeif0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif3(&self) -> Ctcif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif3R { bits }
+            }
+            # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif3(&self) -> Chtif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif3R { bits }
+            }
+            # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif3(&self) -> Cteif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif3R { bits }
+            }
+            # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif3(&self) -> Cdmeif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif3R { bits }
+            }
+            # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif3(&self) -> Cfeif3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif3R { bits }
+            }
+            # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif2(&self) -> Ctcif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif2R { bits }
+            }
+            # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif2(&self) -> Chtif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif2R { bits }
+            }
+            # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif2(&self) -> Cteif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif2R { bits }
+            }
+            # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif2(&self) -> Cdmeif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif2R { bits }
+            }
+            # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif2(&self) -> Cfeif2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif2R { bits }
+            }
+            # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif1(&self) -> Ctcif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif1R { bits }
+            }
+            # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif1(&self) -> Chtif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif1R { bits }
+            }
+            # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif1(&self) -> Cteif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif1R { bits }
+            }
+            # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif1(&self) -> Cdmeif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif1R { bits }
+            }
+            # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif1(&self) -> Cfeif1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif1R { bits }
+            }
+            # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif0(&self) -> Ctcif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif0R { bits }
+            }
+            # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif0(&self) -> Chtif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif0R { bits }
+            }
+            # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif0(&self) -> Cteif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif0R { bits }
+            }
+            # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif0(&self) -> Cdmeif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif0R { bits }
+            }
+            # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif0(&self) -> Cfeif0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif3(&mut self) -> _Ctcif3W {
+                _Ctcif3W { w: self }
+            }
+            # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif3(&mut self) -> _Chtif3W {
+                _Chtif3W { w: self }
+            }
+            # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif3(&mut self) -> _Cteif3W {
+                _Cteif3W { w: self }
+            }
+            # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif3(&mut self) -> _Cdmeif3W {
+                _Cdmeif3W { w: self }
+            }
+            # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif3(&mut self) -> _Cfeif3W {
+                _Cfeif3W { w: self }
+            }
+            # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif2(&mut self) -> _Ctcif2W {
+                _Ctcif2W { w: self }
+            }
+            # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif2(&mut self) -> _Chtif2W {
+                _Chtif2W { w: self }
+            }
+            # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif2(&mut self) -> _Cteif2W {
+                _Cteif2W { w: self }
+            }
+            # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif2(&mut self) -> _Cdmeif2W {
+                _Cdmeif2W { w: self }
+            }
+            # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif2(&mut self) -> _Cfeif2W {
+                _Cfeif2W { w: self }
+            }
+            # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif1(&mut self) -> _Ctcif1W {
+                _Ctcif1W { w: self }
+            }
+            # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif1(&mut self) -> _Chtif1W {
+                _Chtif1W { w: self }
+            }
+            # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif1(&mut self) -> _Cteif1W {
+                _Cteif1W { w: self }
+            }
+            # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif1(&mut self) -> _Cdmeif1W {
+                _Cdmeif1W { w: self }
+            }
+            # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif1(&mut self) -> _Cfeif1W {
+                _Cfeif1W { w: self }
+            }
+            # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif0(&mut self) -> _Ctcif0W {
+                _Ctcif0W { w: self }
+            }
+            # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn chtif0(&mut self) -> _Chtif0W {
+                _Chtif0W { w: self }
+            }
+            # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cteif0(&mut self) -> _Cteif0W {
+                _Cteif0W { w: self }
+            }
+            # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif0(&mut self) -> _Cdmeif0W {
+                _Cdmeif0W { w: self }
+            }
+            # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 3..0)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif0(&mut self) -> _Cfeif0W {
+                _Cfeif0W { w: self }
+            }
+        }
+    }
+    # [ doc = "high interrupt flag clear register" ]
+    pub struct Hifcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "high interrupt flag clear register" ]
+    pub mod hifcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Hifcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif7R {
+            bits: u8,
+        }
+        impl Ctcif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif7R {
+            bits: u8,
+        }
+        impl Chtif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif7R {
+            bits: u8,
+        }
+        impl Cteif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif7R {
+            bits: u8,
+        }
+        impl Cdmeif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif7R {
+            bits: u8,
+        }
+        impl Cfeif7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif6R {
+            bits: u8,
+        }
+        impl Ctcif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif6R {
+            bits: u8,
+        }
+        impl Chtif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif6R {
+            bits: u8,
+        }
+        impl Cteif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif6R {
+            bits: u8,
+        }
+        impl Cdmeif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif6R {
+            bits: u8,
+        }
+        impl Cfeif6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif5R {
+            bits: u8,
+        }
+        impl Ctcif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif5R {
+            bits: u8,
+        }
+        impl Chtif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif5R {
+            bits: u8,
+        }
+        impl Cteif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif5R {
+            bits: u8,
+        }
+        impl Cdmeif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif5R {
+            bits: u8,
+        }
+        impl Cfeif5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ctcif4R {
+            bits: u8,
+        }
+        impl Ctcif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Chtif4R {
+            bits: u8,
+        }
+        impl Chtif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cteif4R {
+            bits: u8,
+        }
+        impl Cteif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cdmeif4R {
+            bits: u8,
+        }
+        impl Cdmeif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cfeif4R {
+            bits: u8,
+        }
+        impl Cfeif4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ctcif4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ctcif4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Chtif4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Chtif4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cteif4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cteif4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cdmeif4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cdmeif4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cfeif4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cfeif4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif7(&self) -> Ctcif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif7R { bits }
+            }
+            # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif7(&self) -> Chtif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif7R { bits }
+            }
+            # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif7(&self) -> Cteif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif7R { bits }
+            }
+            # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif7(&self) -> Cdmeif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif7R { bits }
+            }
+            # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif7(&self) -> Cfeif7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif7R { bits }
+            }
+            # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif6(&self) -> Ctcif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif6R { bits }
+            }
+            # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif6(&self) -> Chtif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif6R { bits }
+            }
+            # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif6(&self) -> Cteif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif6R { bits }
+            }
+            # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif6(&self) -> Cdmeif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif6R { bits }
+            }
+            # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif6(&self) -> Cfeif6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif6R { bits }
+            }
+            # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif5(&self) -> Ctcif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif5R { bits }
+            }
+            # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif5(&self) -> Chtif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif5R { bits }
+            }
+            # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif5(&self) -> Cteif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif5R { bits }
+            }
+            # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif5(&self) -> Cdmeif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif5R { bits }
+            }
+            # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif5(&self) -> Cfeif5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif5R { bits }
+            }
+            # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif4(&self) -> Ctcif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ctcif4R { bits }
+            }
+            # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif4(&self) -> Chtif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Chtif4R { bits }
+            }
+            # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif4(&self) -> Cteif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cteif4R { bits }
+            }
+            # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif4(&self) -> Cdmeif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cdmeif4R { bits }
+            }
+            # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif4(&self) -> Cfeif4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cfeif4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 27 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif7(&mut self) -> _Ctcif7W {
+                _Ctcif7W { w: self }
+            }
+            # [ doc = "Bit 26 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif7(&mut self) -> _Chtif7W {
+                _Chtif7W { w: self }
+            }
+            # [ doc = "Bit 25 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif7(&mut self) -> _Cteif7W {
+                _Cteif7W { w: self }
+            }
+            # [ doc = "Bit 24 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif7(&mut self) -> _Cdmeif7W {
+                _Cdmeif7W { w: self }
+            }
+            # [ doc = "Bit 22 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif7(&mut self) -> _Cfeif7W {
+                _Cfeif7W { w: self }
+            }
+            # [ doc = "Bit 21 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif6(&mut self) -> _Ctcif6W {
+                _Ctcif6W { w: self }
+            }
+            # [ doc = "Bit 20 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif6(&mut self) -> _Chtif6W {
+                _Chtif6W { w: self }
+            }
+            # [ doc = "Bit 19 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif6(&mut self) -> _Cteif6W {
+                _Cteif6W { w: self }
+            }
+            # [ doc = "Bit 18 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif6(&mut self) -> _Cdmeif6W {
+                _Cdmeif6W { w: self }
+            }
+            # [ doc = "Bit 16 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif6(&mut self) -> _Cfeif6W {
+                _Cfeif6W { w: self }
+            }
+            # [ doc = "Bit 11 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif5(&mut self) -> _Ctcif5W {
+                _Ctcif5W { w: self }
+            }
+            # [ doc = "Bit 10 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif5(&mut self) -> _Chtif5W {
+                _Chtif5W { w: self }
+            }
+            # [ doc = "Bit 9 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif5(&mut self) -> _Cteif5W {
+                _Cteif5W { w: self }
+            }
+            # [ doc = "Bit 8 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif5(&mut self) -> _Cdmeif5W {
+                _Cdmeif5W { w: self }
+            }
+            # [ doc = "Bit 6 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif5(&mut self) -> _Cfeif5W {
+                _Cfeif5W { w: self }
+            }
+            # [ doc = "Bit 5 - Stream x clear transfer complete interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn ctcif4(&mut self) -> _Ctcif4W {
+                _Ctcif4W { w: self }
+            }
+            # [ doc = "Bit 4 - Stream x clear half transfer interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn chtif4(&mut self) -> _Chtif4W {
+                _Chtif4W { w: self }
+            }
+            # [ doc = "Bit 3 - Stream x clear transfer error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cteif4(&mut self) -> _Cteif4W {
+                _Cteif4W { w: self }
+            }
+            # [ doc = "Bit 2 - Stream x clear direct mode error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cdmeif4(&mut self) -> _Cdmeif4W {
+                _Cdmeif4W { w: self }
+            }
+            # [ doc = "Bit 0 - Stream x clear FIFO error interrupt flag (x = 7..4)" ]
+            # [ inline ( always ) ]
+            pub fn cfeif4(&mut self) -> _Cfeif4W {
+                _Cfeif4W { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S0cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s0cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S0ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s0ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S0par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s0par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S0m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s0m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S0m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s0m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S0fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s0fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S0fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S1cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s1cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S1ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s1ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S1par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s1par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S1m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s1m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S1m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s1m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S1fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s1fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S1fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S2cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s2cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S2ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s2ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S2par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s2par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S2m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s2m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S2m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s2m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S2fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s2fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S2fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S3cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s3cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S3ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s3ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S3par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s3par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S3m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s3m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S3m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s3m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S3fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s3fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S3fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S4cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s4cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S4ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s4ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S4par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s4par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S4m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s4m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S4m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s4m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S4fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s4fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S4fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S5cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s5cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S5ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s5ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S5par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s5par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S5m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s5m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S5m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s5m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S5fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s5fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S5fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S6cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s6cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S6ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s6ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S6par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s6par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S6m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s6m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S6m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s6m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S6fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s6fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S6fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x configuration register" ]
+    pub struct S7cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x configuration register" ]
+    pub mod s7cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChselR {
+            bits: u8,
+        }
+        impl ChselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MburstR {
+            bits: u8,
+        }
+        impl MburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PburstR {
+            bits: u8,
+        }
+        impl PburstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtR {
+            bits: u8,
+        }
+        impl CtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbmR {
+            bits: u8,
+        }
+        impl DbmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlR {
+            bits: u8,
+        }
+        impl PlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincosR {
+            bits: u8,
+        }
+        impl PincosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsizeR {
+            bits: u8,
+        }
+        impl MsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MincR {
+            bits: u8,
+        }
+        impl MincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PincR {
+            bits: u8,
+        }
+        impl PincR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CircR {
+            bits: u8,
+        }
+        impl CircR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfctrlR {
+            bits: u8,
+        }
+        impl PfctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtieR {
+            bits: u8,
+        }
+        impl HtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeieR {
+            bits: u8,
+        }
+        impl TeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmeieR {
+            bits: u8,
+        }
+        impl DmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnR {
+            bits: u8,
+        }
+        impl EnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PburstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PburstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PincW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PincW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CircW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CircW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&self) -> ChselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChselR { bits }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&self) -> MburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MburstR { bits }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&self) -> PburstR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PburstR { bits }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&self) -> CtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtR { bits }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&self) -> DbmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbmR { bits }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&self) -> PlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlR { bits }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&self) -> PincosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincosR { bits }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&self) -> MsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsizeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&self) -> MincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MincR { bits }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&self) -> PincR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PincR { bits }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&self) -> CircR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CircR { bits }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&self) -> PfctrlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfctrlR { bits }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&self) -> HtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtieR { bits }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&self) -> TeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeieR { bits }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&self) -> DmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmeieR { bits }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&self) -> EnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:27 - Channel selection" ]
+            # [ inline ( always ) ]
+            pub fn chsel(&mut self) -> _ChselW {
+                _ChselW { w: self }
+            }
+            # [ doc = "Bits 23:24 - Memory burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn mburst(&mut self) -> _MburstW {
+                _MburstW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Peripheral burst transfer configuration" ]
+            # [ inline ( always ) ]
+            pub fn pburst(&mut self) -> _PburstW {
+                _PburstW { w: self }
+            }
+            # [ doc = "Bit 20 - ACK" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 19 - Current target (only in double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn ct(&mut self) -> _CtW {
+                _CtW { w: self }
+            }
+            # [ doc = "Bit 18 - Double buffer mode" ]
+            # [ inline ( always ) ]
+            pub fn dbm(&mut self) -> _DbmW {
+                _DbmW { w: self }
+            }
+            # [ doc = "Bits 16:17 - Priority level" ]
+            # [ inline ( always ) ]
+            pub fn pl(&mut self) -> _PlW {
+                _PlW { w: self }
+            }
+            # [ doc = "Bit 15 - Peripheral increment offset size" ]
+            # [ inline ( always ) ]
+            pub fn pincos(&mut self) -> _PincosW {
+                _PincosW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Memory data size" ]
+            # [ inline ( always ) ]
+            pub fn msize(&mut self) -> _MsizeW {
+                _MsizeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Peripheral data size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 10 - Memory increment mode" ]
+            # [ inline ( always ) ]
+            pub fn minc(&mut self) -> _MincW {
+                _MincW { w: self }
+            }
+            # [ doc = "Bit 9 - Peripheral increment mode" ]
+            # [ inline ( always ) ]
+            pub fn pinc(&mut self) -> _PincW {
+                _PincW { w: self }
+            }
+            # [ doc = "Bit 8 - Circular mode" ]
+            # [ inline ( always ) ]
+            pub fn circ(&mut self) -> _CircW {
+                _CircW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Data transfer direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 5 - Peripheral flow controller" ]
+            # [ inline ( always ) ]
+            pub fn pfctrl(&mut self) -> _PfctrlW {
+                _PfctrlW { w: self }
+            }
+            # [ doc = "Bit 4 - Transfer complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 3 - Half transfer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn htie(&mut self) -> _HtieW {
+                _HtieW { w: self }
+            }
+            # [ doc = "Bit 2 - Transfer error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn teie(&mut self) -> _TeieW {
+                _TeieW { w: self }
+            }
+            # [ doc = "Bit 1 - Direct mode error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmeie(&mut self) -> _DmeieW {
+                _DmeieW { w: self }
+            }
+            # [ doc = "Bit 0 - Stream enable / flag stream ready when read low" ]
+            # [ inline ( always ) ]
+            pub fn en(&mut self) -> _EnW {
+                _EnW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x number of data register" ]
+    pub struct S7ndtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x number of data register" ]
+    pub mod s7ndtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7ndtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NdtR {
+            bits: u16,
+        }
+        impl NdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&self) -> NdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Number of data items to transfer" ]
+            # [ inline ( always ) ]
+            pub fn ndt(&mut self) -> _NdtW {
+                _NdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub struct S7par {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x peripheral address register" ]
+    pub mod s7par {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7par {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u32,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Peripheral address" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub struct S7m0ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 0 address register" ]
+    pub mod s7m0ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7m0ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M0aR {
+            bits: u32,
+        }
+        impl M0aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M0aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M0aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&self) -> M0aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M0aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 0 address" ]
+            # [ inline ( always ) ]
+            pub fn m0a(&mut self) -> _M0aW {
+                _M0aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub struct S7m1ar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x memory 1 address register" ]
+    pub mod s7m1ar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7m1ar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct M1aR {
+            bits: u32,
+        }
+        impl M1aR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _M1aW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _M1aW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&self) -> M1aR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                M1aR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Memory 1 address (used in case of Double buffer mode)" ]
+            # [ inline ( always ) ]
+            pub fn m1a(&mut self) -> _M1aW {
+                _M1aW { w: self }
+            }
+        }
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub struct S7fcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "stream x FIFO control register" ]
+    pub mod s7fcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::S7fcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeieR {
+            bits: u8,
+        }
+        impl FeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsR {
+            bits: u8,
+        }
+        impl FsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmdisR {
+            bits: u8,
+        }
+        impl DmdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FthR {
+            bits: u8,
+        }
+        impl FthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&self) -> FeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeieR { bits }
+            }
+            # [ doc = "Bits 3:5 - FIFO status" ]
+            # [ inline ( always ) ]
+            pub fn fs(&self) -> FsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsR { bits }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&self) -> DmdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmdisR { bits }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&self) -> FthR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - FIFO error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn feie(&mut self) -> _FeieW {
+                _FeieW { w: self }
+            }
+            # [ doc = "Bit 2 - Direct mode disable" ]
+            # [ inline ( always ) ]
+            pub fn dmdis(&mut self) -> _DmdisW {
+                _DmdisW { w: self }
+            }
+            # [ doc = "Bits 0:1 - FIFO threshold selection" ]
+            # [ inline ( always ) ]
+            pub fn fth(&mut self) -> _FthW {
+                _FthW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "DMA controller" ]
+pub struct Dma2 {
+    register_block: dma2::RegisterBlock,
+}
+impl Deref for Dma2 {
+    type Target = dma2::RegisterBlock;
+    fn deref(&self) -> &dma2::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "DMA1" ]
+pub const DMA1: Peripheral<Dma1> = unsafe { Peripheral::new(1073897472) };
+# [ doc = r" Register block" ]
+pub struct Dma1 {
+    register_block: dma2::RegisterBlock,
+}
+impl Deref for Dma1 {
+    type Target = dma2::RegisterBlock;
+    fn deref(&self) -> &dma2::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Reset and clock control" ]
+pub const RCC: Peripheral<Rcc> = unsafe { Peripheral::new(1073887232) };
+# [ doc = "Reset and clock control" ]
+pub mod rcc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - clock control register" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - PLL configuration register" ]
+        pub pllcfgr: Pllcfgr,
+        # [ doc = "0x08 - clock configuration register" ]
+        pub cfgr: Cfgr,
+        # [ doc = "0x0c - clock interrupt register" ]
+        pub cir: Cir,
+        # [ doc = "0x10 - AHB1 peripheral reset register" ]
+        pub ahb1rstr: Ahb1rstr,
+        # [ doc = "0x14 - AHB2 peripheral reset register" ]
+        pub ahb2rstr: Ahb2rstr,
+        # [ doc = "0x18 - AHB3 peripheral reset register" ]
+        pub ahb3rstr: Ahb3rstr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x20 - APB1 peripheral reset register" ]
+        pub apb1rstr: Apb1rstr,
+        # [ doc = "0x24 - APB2 peripheral reset register" ]
+        pub apb2rstr: Apb2rstr,
+        _reserved1: [u8; 8usize],
+        # [ doc = "0x30 - AHB1 peripheral clock register" ]
+        pub ahb1enr: Ahb1enr,
+        # [ doc = "0x34 - AHB2 peripheral clock enable register" ]
+        pub ahb2enr: Ahb2enr,
+        # [ doc = "0x38 - AHB3 peripheral clock enable register" ]
+        pub ahb3enr: Ahb3enr,
+        _reserved2: [u8; 4usize],
+        # [ doc = "0x40 - APB1 peripheral clock enable register" ]
+        pub apb1enr: Apb1enr,
+        # [ doc = "0x44 - APB2 peripheral clock enable register" ]
+        pub apb2enr: Apb2enr,
+        _reserved3: [u8; 8usize],
+        # [ doc = "0x50 - AHB1 peripheral clock enable in low power mode register" ]
+        pub ahb1lpenr: Ahb1lpenr,
+        # [ doc = "0x54 - AHB2 peripheral clock enable in low power mode register" ]
+        pub ahb2lpenr: Ahb2lpenr,
+        # [ doc = "0x58 - AHB3 peripheral clock enable in low power mode register" ]
+        pub ahb3lpenr: Ahb3lpenr,
+        _reserved4: [u8; 4usize],
+        # [ doc = "0x60 - APB1 peripheral clock enable in low power mode register" ]
+        pub apb1lpenr: Apb1lpenr,
+        # [ doc = "0x64 - APB2 peripheral clock enabled in low power mode register" ]
+        pub apb2lpenr: Apb2lpenr,
+        _reserved5: [u8; 8usize],
+        # [ doc = "0x70 - Backup domain control register" ]
+        pub bdcr: Bdcr,
+        # [ doc = "0x74 - clock control & status register" ]
+        pub csr: Csr,
+        _reserved6: [u8; 8usize],
+        # [ doc = "0x80 - spread spectrum clock generation register" ]
+        pub sscgr: Sscgr,
+        # [ doc = "0x84 - PLLI2S configuration register" ]
+        pub plli2scfgr: Plli2scfgr,
+    }
+    # [ doc = "clock control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "clock control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2srdyR {
+            bits: u8,
+        }
+        impl Plli2srdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2sonR {
+            bits: u8,
+        }
+        impl Plli2sonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PllrdyR {
+            bits: u8,
+        }
+        impl PllrdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PllonR {
+            bits: u8,
+        }
+        impl PllonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CssonR {
+            bits: u8,
+        }
+        impl CssonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsebypR {
+            bits: u8,
+        }
+        impl HsebypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HserdyR {
+            bits: u8,
+        }
+        impl HserdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HseonR {
+            bits: u8,
+        }
+        impl HseonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsicalR {
+            bits: u8,
+        }
+        impl HsicalR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsitrimR {
+            bits: u8,
+        }
+        impl HsitrimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsirdyR {
+            bits: u8,
+        }
+        impl HsirdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsionR {
+            bits: u8,
+        }
+        impl HsionR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plli2sonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plli2sonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PllonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PllonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CssonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CssonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsebypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsebypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HseonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HseonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsitrimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsitrimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsionW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsionW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - PLLI2S clock ready flag" ]
+            # [ inline ( always ) ]
+            pub fn plli2srdy(&self) -> Plli2srdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plli2srdyR { bits }
+            }
+            # [ doc = "Bit 26 - PLLI2S enable" ]
+            # [ inline ( always ) ]
+            pub fn plli2son(&self) -> Plli2sonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plli2sonR { bits }
+            }
+            # [ doc = "Bit 25 - Main PLL (PLL) clock ready flag" ]
+            # [ inline ( always ) ]
+            pub fn pllrdy(&self) -> PllrdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PllrdyR { bits }
+            }
+            # [ doc = "Bit 24 - Main PLL (PLL) enable" ]
+            # [ inline ( always ) ]
+            pub fn pllon(&self) -> PllonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PllonR { bits }
+            }
+            # [ doc = "Bit 19 - Clock security system enable" ]
+            # [ inline ( always ) ]
+            pub fn csson(&self) -> CssonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CssonR { bits }
+            }
+            # [ doc = "Bit 18 - HSE clock bypass" ]
+            # [ inline ( always ) ]
+            pub fn hsebyp(&self) -> HsebypR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsebypR { bits }
+            }
+            # [ doc = "Bit 17 - HSE clock ready flag" ]
+            # [ inline ( always ) ]
+            pub fn hserdy(&self) -> HserdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HserdyR { bits }
+            }
+            # [ doc = "Bit 16 - HSE clock enable" ]
+            # [ inline ( always ) ]
+            pub fn hseon(&self) -> HseonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HseonR { bits }
+            }
+            # [ doc = "Bits 8:15 - Internal high-speed clock calibration" ]
+            # [ inline ( always ) ]
+            pub fn hsical(&self) -> HsicalR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsicalR { bits }
+            }
+            # [ doc = "Bits 3:7 - Internal high-speed clock trimming" ]
+            # [ inline ( always ) ]
+            pub fn hsitrim(&self) -> HsitrimR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsitrimR { bits }
+            }
+            # [ doc = "Bit 1 - Internal high-speed clock ready flag" ]
+            # [ inline ( always ) ]
+            pub fn hsirdy(&self) -> HsirdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsirdyR { bits }
+            }
+            # [ doc = "Bit 0 - Internal high-speed clock enable" ]
+            # [ inline ( always ) ]
+            pub fn hsion(&self) -> HsionR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsionR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 131 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 26 - PLLI2S enable" ]
+            # [ inline ( always ) ]
+            pub fn plli2son(&mut self) -> _Plli2sonW {
+                _Plli2sonW { w: self }
+            }
+            # [ doc = "Bit 24 - Main PLL (PLL) enable" ]
+            # [ inline ( always ) ]
+            pub fn pllon(&mut self) -> _PllonW {
+                _PllonW { w: self }
+            }
+            # [ doc = "Bit 19 - Clock security system enable" ]
+            # [ inline ( always ) ]
+            pub fn csson(&mut self) -> _CssonW {
+                _CssonW { w: self }
+            }
+            # [ doc = "Bit 18 - HSE clock bypass" ]
+            # [ inline ( always ) ]
+            pub fn hsebyp(&mut self) -> _HsebypW {
+                _HsebypW { w: self }
+            }
+            # [ doc = "Bit 16 - HSE clock enable" ]
+            # [ inline ( always ) ]
+            pub fn hseon(&mut self) -> _HseonW {
+                _HseonW { w: self }
+            }
+            # [ doc = "Bits 3:7 - Internal high-speed clock trimming" ]
+            # [ inline ( always ) ]
+            pub fn hsitrim(&mut self) -> _HsitrimW {
+                _HsitrimW { w: self }
+            }
+            # [ doc = "Bit 0 - Internal high-speed clock enable" ]
+            # [ inline ( always ) ]
+            pub fn hsion(&mut self) -> _HsionW {
+                _HsionW { w: self }
+            }
+        }
+    }
+    # [ doc = "PLL configuration register" ]
+    pub struct Pllcfgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "PLL configuration register" ]
+    pub mod pllcfgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pllcfgr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllq3R {
+            bits: u8,
+        }
+        impl Pllq3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllq2R {
+            bits: u8,
+        }
+        impl Pllq2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllq1R {
+            bits: u8,
+        }
+        impl Pllq1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllq0R {
+            bits: u8,
+        }
+        impl Pllq0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PllsrcR {
+            bits: u8,
+        }
+        impl PllsrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllp1R {
+            bits: u8,
+        }
+        impl Pllp1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllp0R {
+            bits: u8,
+        }
+        impl Pllp0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln8R {
+            bits: u8,
+        }
+        impl Plln8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln7R {
+            bits: u8,
+        }
+        impl Plln7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln6R {
+            bits: u8,
+        }
+        impl Plln6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln5R {
+            bits: u8,
+        }
+        impl Plln5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln4R {
+            bits: u8,
+        }
+        impl Plln4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln3R {
+            bits: u8,
+        }
+        impl Plln3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln2R {
+            bits: u8,
+        }
+        impl Plln2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln1R {
+            bits: u8,
+        }
+        impl Plln1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plln0R {
+            bits: u8,
+        }
+        impl Plln0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm5R {
+            bits: u8,
+        }
+        impl Pllm5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm4R {
+            bits: u8,
+        }
+        impl Pllm4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm3R {
+            bits: u8,
+        }
+        impl Pllm3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm2R {
+            bits: u8,
+        }
+        impl Pllm2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm1R {
+            bits: u8,
+        }
+        impl Pllm1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pllm0R {
+            bits: u8,
+        }
+        impl Pllm0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllq3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllq3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllq2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllq2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllq1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllq1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllq0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllq0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PllsrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PllsrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllp1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllp1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllp0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllp0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plln0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plln0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pllm0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pllm0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 27 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq3(&self) -> Pllq3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllq3R { bits }
+            }
+            # [ doc = "Bit 26 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq2(&self) -> Pllq2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllq2R { bits }
+            }
+            # [ doc = "Bit 25 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq1(&self) -> Pllq1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllq1R { bits }
+            }
+            # [ doc = "Bit 24 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq0(&self) -> Pllq0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllq0R { bits }
+            }
+            # [ doc = "Bit 22 - Main PLL(PLL) and audio PLL (PLLI2S) entry clock source" ]
+            # [ inline ( always ) ]
+            pub fn pllsrc(&self) -> PllsrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PllsrcR { bits }
+            }
+            # [ doc = "Bit 17 - Main PLL (PLL) division factor for main system clock" ]
+            # [ inline ( always ) ]
+            pub fn pllp1(&self) -> Pllp1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllp1R { bits }
+            }
+            # [ doc = "Bit 16 - Main PLL (PLL) division factor for main system clock" ]
+            # [ inline ( always ) ]
+            pub fn pllp0(&self) -> Pllp0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllp0R { bits }
+            }
+            # [ doc = "Bit 14 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln8(&self) -> Plln8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln8R { bits }
+            }
+            # [ doc = "Bit 13 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln7(&self) -> Plln7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln7R { bits }
+            }
+            # [ doc = "Bit 12 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln6(&self) -> Plln6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln6R { bits }
+            }
+            # [ doc = "Bit 11 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln5(&self) -> Plln5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln5R { bits }
+            }
+            # [ doc = "Bit 10 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln4(&self) -> Plln4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln4R { bits }
+            }
+            # [ doc = "Bit 9 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln3(&self) -> Plln3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln3R { bits }
+            }
+            # [ doc = "Bit 8 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln2(&self) -> Plln2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln2R { bits }
+            }
+            # [ doc = "Bit 7 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln1(&self) -> Plln1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln1R { bits }
+            }
+            # [ doc = "Bit 6 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln0(&self) -> Plln0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plln0R { bits }
+            }
+            # [ doc = "Bit 5 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm5(&self) -> Pllm5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm5R { bits }
+            }
+            # [ doc = "Bit 4 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm4(&self) -> Pllm4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm4R { bits }
+            }
+            # [ doc = "Bit 3 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm3(&self) -> Pllm3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm3R { bits }
+            }
+            # [ doc = "Bit 2 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm2(&self) -> Pllm2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm2R { bits }
+            }
+            # [ doc = "Bit 1 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm1(&self) -> Pllm1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm1R { bits }
+            }
+            # [ doc = "Bit 0 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm0(&self) -> Pllm0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pllm0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 603992080 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 27 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq3(&mut self) -> _Pllq3W {
+                _Pllq3W { w: self }
+            }
+            # [ doc = "Bit 26 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq2(&mut self) -> _Pllq2W {
+                _Pllq2W { w: self }
+            }
+            # [ doc = "Bit 25 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq1(&mut self) -> _Pllq1W {
+                _Pllq1W { w: self }
+            }
+            # [ doc = "Bit 24 - Main PLL (PLL) division factor for USB OTG FS, SDIO and random number generator clocks" ]
+            # [ inline ( always ) ]
+            pub fn pllq0(&mut self) -> _Pllq0W {
+                _Pllq0W { w: self }
+            }
+            # [ doc = "Bit 22 - Main PLL(PLL) and audio PLL (PLLI2S) entry clock source" ]
+            # [ inline ( always ) ]
+            pub fn pllsrc(&mut self) -> _PllsrcW {
+                _PllsrcW { w: self }
+            }
+            # [ doc = "Bit 17 - Main PLL (PLL) division factor for main system clock" ]
+            # [ inline ( always ) ]
+            pub fn pllp1(&mut self) -> _Pllp1W {
+                _Pllp1W { w: self }
+            }
+            # [ doc = "Bit 16 - Main PLL (PLL) division factor for main system clock" ]
+            # [ inline ( always ) ]
+            pub fn pllp0(&mut self) -> _Pllp0W {
+                _Pllp0W { w: self }
+            }
+            # [ doc = "Bit 14 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln8(&mut self) -> _Plln8W {
+                _Plln8W { w: self }
+            }
+            # [ doc = "Bit 13 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln7(&mut self) -> _Plln7W {
+                _Plln7W { w: self }
+            }
+            # [ doc = "Bit 12 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln6(&mut self) -> _Plln6W {
+                _Plln6W { w: self }
+            }
+            # [ doc = "Bit 11 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln5(&mut self) -> _Plln5W {
+                _Plln5W { w: self }
+            }
+            # [ doc = "Bit 10 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln4(&mut self) -> _Plln4W {
+                _Plln4W { w: self }
+            }
+            # [ doc = "Bit 9 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln3(&mut self) -> _Plln3W {
+                _Plln3W { w: self }
+            }
+            # [ doc = "Bit 8 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln2(&mut self) -> _Plln2W {
+                _Plln2W { w: self }
+            }
+            # [ doc = "Bit 7 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln1(&mut self) -> _Plln1W {
+                _Plln1W { w: self }
+            }
+            # [ doc = "Bit 6 - Main PLL (PLL) multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plln0(&mut self) -> _Plln0W {
+                _Plln0W { w: self }
+            }
+            # [ doc = "Bit 5 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm5(&mut self) -> _Pllm5W {
+                _Pllm5W { w: self }
+            }
+            # [ doc = "Bit 4 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm4(&mut self) -> _Pllm4W {
+                _Pllm4W { w: self }
+            }
+            # [ doc = "Bit 3 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm3(&mut self) -> _Pllm3W {
+                _Pllm3W { w: self }
+            }
+            # [ doc = "Bit 2 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm2(&mut self) -> _Pllm2W {
+                _Pllm2W { w: self }
+            }
+            # [ doc = "Bit 1 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm1(&mut self) -> _Pllm1W {
+                _Pllm1W { w: self }
+            }
+            # [ doc = "Bit 0 - Division factor for the main PLL (PLL) and audio PLL (PLLI2S) input clock" ]
+            # [ inline ( always ) ]
+            pub fn pllm0(&mut self) -> _Pllm0W {
+                _Pllm0W { w: self }
+            }
+        }
+    }
+    # [ doc = "clock configuration register" ]
+    pub struct Cfgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "clock configuration register" ]
+    pub mod cfgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cfgr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mco2R {
+            bits: u8,
+        }
+        impl Mco2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mco2preR {
+            bits: u8,
+        }
+        impl Mco2preR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mco1preR {
+            bits: u8,
+        }
+        impl Mco1preR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2ssrcR {
+            bits: u8,
+        }
+        impl I2ssrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mco1R {
+            bits: u8,
+        }
+        impl Mco1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtcpreR {
+            bits: u8,
+        }
+        impl RtcpreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ppre2R {
+            bits: u8,
+        }
+        impl Ppre2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ppre1R {
+            bits: u8,
+        }
+        impl Ppre1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HpreR {
+            bits: u8,
+        }
+        impl HpreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sws1R {
+            bits: u8,
+        }
+        impl Sws1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sws0R {
+            bits: u8,
+        }
+        impl Sws0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sw1R {
+            bits: u8,
+        }
+        impl Sw1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sw0R {
+            bits: u8,
+        }
+        impl Sw0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mco2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mco2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mco2preW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mco2preW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mco1preW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mco1preW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2ssrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2ssrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mco1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mco1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtcpreW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtcpreW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ppre2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ppre2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ppre1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ppre1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HpreW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HpreW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sw1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sw1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sw0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sw0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Microcontroller clock output 2" ]
+            # [ inline ( always ) ]
+            pub fn mco2(&self) -> Mco2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mco2R { bits }
+            }
+            # [ doc = "Bits 27:29 - MCO2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn mco2pre(&self) -> Mco2preR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mco2preR { bits }
+            }
+            # [ doc = "Bits 24:26 - MCO1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn mco1pre(&self) -> Mco1preR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mco1preR { bits }
+            }
+            # [ doc = "Bit 23 - I2S clock selection" ]
+            # [ inline ( always ) ]
+            pub fn i2ssrc(&self) -> I2ssrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2ssrcR { bits }
+            }
+            # [ doc = "Bits 21:22 - Microcontroller clock output 1" ]
+            # [ inline ( always ) ]
+            pub fn mco1(&self) -> Mco1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mco1R { bits }
+            }
+            # [ doc = "Bits 16:20 - HSE division factor for RTC clock" ]
+            # [ inline ( always ) ]
+            pub fn rtcpre(&self) -> RtcpreR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtcpreR { bits }
+            }
+            # [ doc = "Bits 13:15 - APB high-speed prescaler (APB2)" ]
+            # [ inline ( always ) ]
+            pub fn ppre2(&self) -> Ppre2R {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ppre2R { bits }
+            }
+            # [ doc = "Bits 10:12 - APB Low speed prescaler (APB1)" ]
+            # [ inline ( always ) ]
+            pub fn ppre1(&self) -> Ppre1R {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ppre1R { bits }
+            }
+            # [ doc = "Bits 4:7 - AHB prescaler" ]
+            # [ inline ( always ) ]
+            pub fn hpre(&self) -> HpreR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HpreR { bits }
+            }
+            # [ doc = "Bit 3 - System clock switch status" ]
+            # [ inline ( always ) ]
+            pub fn sws1(&self) -> Sws1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sws1R { bits }
+            }
+            # [ doc = "Bit 2 - System clock switch status" ]
+            # [ inline ( always ) ]
+            pub fn sws0(&self) -> Sws0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sws0R { bits }
+            }
+            # [ doc = "Bit 1 - System clock switch" ]
+            # [ inline ( always ) ]
+            pub fn sw1(&self) -> Sw1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sw1R { bits }
+            }
+            # [ doc = "Bit 0 - System clock switch" ]
+            # [ inline ( always ) ]
+            pub fn sw0(&self) -> Sw0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sw0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Microcontroller clock output 2" ]
+            # [ inline ( always ) ]
+            pub fn mco2(&mut self) -> _Mco2W {
+                _Mco2W { w: self }
+            }
+            # [ doc = "Bits 27:29 - MCO2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn mco2pre(&mut self) -> _Mco2preW {
+                _Mco2preW { w: self }
+            }
+            # [ doc = "Bits 24:26 - MCO1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn mco1pre(&mut self) -> _Mco1preW {
+                _Mco1preW { w: self }
+            }
+            # [ doc = "Bit 23 - I2S clock selection" ]
+            # [ inline ( always ) ]
+            pub fn i2ssrc(&mut self) -> _I2ssrcW {
+                _I2ssrcW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Microcontroller clock output 1" ]
+            # [ inline ( always ) ]
+            pub fn mco1(&mut self) -> _Mco1W {
+                _Mco1W { w: self }
+            }
+            # [ doc = "Bits 16:20 - HSE division factor for RTC clock" ]
+            # [ inline ( always ) ]
+            pub fn rtcpre(&mut self) -> _RtcpreW {
+                _RtcpreW { w: self }
+            }
+            # [ doc = "Bits 13:15 - APB high-speed prescaler (APB2)" ]
+            # [ inline ( always ) ]
+            pub fn ppre2(&mut self) -> _Ppre2W {
+                _Ppre2W { w: self }
+            }
+            # [ doc = "Bits 10:12 - APB Low speed prescaler (APB1)" ]
+            # [ inline ( always ) ]
+            pub fn ppre1(&mut self) -> _Ppre1W {
+                _Ppre1W { w: self }
+            }
+            # [ doc = "Bits 4:7 - AHB prescaler" ]
+            # [ inline ( always ) ]
+            pub fn hpre(&mut self) -> _HpreW {
+                _HpreW { w: self }
+            }
+            # [ doc = "Bit 1 - System clock switch" ]
+            # [ inline ( always ) ]
+            pub fn sw1(&mut self) -> _Sw1W {
+                _Sw1W { w: self }
+            }
+            # [ doc = "Bit 0 - System clock switch" ]
+            # [ inline ( always ) ]
+            pub fn sw0(&mut self) -> _Sw0W {
+                _Sw0W { w: self }
+            }
+        }
+    }
+    # [ doc = "clock interrupt register" ]
+    pub struct Cir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "clock interrupt register" ]
+    pub mod cir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cir {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2srdyieR {
+            bits: u8,
+        }
+        impl Plli2srdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PllrdyieR {
+            bits: u8,
+        }
+        impl PllrdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HserdyieR {
+            bits: u8,
+        }
+        impl HserdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsirdyieR {
+            bits: u8,
+        }
+        impl HsirdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LserdyieR {
+            bits: u8,
+        }
+        impl LserdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsirdyieR {
+            bits: u8,
+        }
+        impl LsirdyieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CssfR {
+            bits: u8,
+        }
+        impl CssfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2srdyfR {
+            bits: u8,
+        }
+        impl Plli2srdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PllrdyfR {
+            bits: u8,
+        }
+        impl PllrdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HserdyfR {
+            bits: u8,
+        }
+        impl HserdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsirdyfR {
+            bits: u8,
+        }
+        impl HsirdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LserdyfR {
+            bits: u8,
+        }
+        impl LserdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsirdyfR {
+            bits: u8,
+        }
+        impl LsirdyfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plli2srdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plli2srdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PllrdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PllrdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HserdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HserdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsirdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsirdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LserdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LserdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsirdycW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsirdycW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plli2srdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plli2srdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PllrdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PllrdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HserdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HserdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsirdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsirdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LserdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LserdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsirdyieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsirdyieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 13 - PLLI2S ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn plli2srdyie(&self) -> Plli2srdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plli2srdyieR { bits }
+            }
+            # [ doc = "Bit 12 - Main PLL (PLL) ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn pllrdyie(&self) -> PllrdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PllrdyieR { bits }
+            }
+            # [ doc = "Bit 11 - HSE ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn hserdyie(&self) -> HserdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HserdyieR { bits }
+            }
+            # [ doc = "Bit 10 - HSI ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn hsirdyie(&self) -> HsirdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsirdyieR { bits }
+            }
+            # [ doc = "Bit 9 - LSE ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lserdyie(&self) -> LserdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LserdyieR { bits }
+            }
+            # [ doc = "Bit 8 - LSI ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lsirdyie(&self) -> LsirdyieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsirdyieR { bits }
+            }
+            # [ doc = "Bit 7 - Clock security system interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cssf(&self) -> CssfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CssfR { bits }
+            }
+            # [ doc = "Bit 5 - PLLI2S ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn plli2srdyf(&self) -> Plli2srdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plli2srdyfR { bits }
+            }
+            # [ doc = "Bit 4 - Main PLL (PLL) ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn pllrdyf(&self) -> PllrdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PllrdyfR { bits }
+            }
+            # [ doc = "Bit 3 - HSE ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn hserdyf(&self) -> HserdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HserdyfR { bits }
+            }
+            # [ doc = "Bit 2 - HSI ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn hsirdyf(&self) -> HsirdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsirdyfR { bits }
+            }
+            # [ doc = "Bit 1 - LSE ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn lserdyf(&self) -> LserdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LserdyfR { bits }
+            }
+            # [ doc = "Bit 0 - LSI ready interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn lsirdyf(&self) -> LsirdyfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsirdyfR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - Clock security system interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn cssc(&mut self) -> _CsscW {
+                _CsscW { w: self }
+            }
+            # [ doc = "Bit 21 - PLLI2S ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn plli2srdyc(&mut self) -> _Plli2srdycW {
+                _Plli2srdycW { w: self }
+            }
+            # [ doc = "Bit 20 - Main PLL(PLL) ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn pllrdyc(&mut self) -> _PllrdycW {
+                _PllrdycW { w: self }
+            }
+            # [ doc = "Bit 19 - HSE ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn hserdyc(&mut self) -> _HserdycW {
+                _HserdycW { w: self }
+            }
+            # [ doc = "Bit 18 - HSI ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn hsirdyc(&mut self) -> _HsirdycW {
+                _HsirdycW { w: self }
+            }
+            # [ doc = "Bit 17 - LSE ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn lserdyc(&mut self) -> _LserdycW {
+                _LserdycW { w: self }
+            }
+            # [ doc = "Bit 16 - LSI ready interrupt clear" ]
+            # [ inline ( always ) ]
+            pub fn lsirdyc(&mut self) -> _LsirdycW {
+                _LsirdycW { w: self }
+            }
+            # [ doc = "Bit 13 - PLLI2S ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn plli2srdyie(&mut self) -> _Plli2srdyieW {
+                _Plli2srdyieW { w: self }
+            }
+            # [ doc = "Bit 12 - Main PLL (PLL) ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn pllrdyie(&mut self) -> _PllrdyieW {
+                _PllrdyieW { w: self }
+            }
+            # [ doc = "Bit 11 - HSE ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn hserdyie(&mut self) -> _HserdyieW {
+                _HserdyieW { w: self }
+            }
+            # [ doc = "Bit 10 - HSI ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn hsirdyie(&mut self) -> _HsirdyieW {
+                _HsirdyieW { w: self }
+            }
+            # [ doc = "Bit 9 - LSE ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lserdyie(&mut self) -> _LserdyieW {
+                _LserdyieW { w: self }
+            }
+            # [ doc = "Bit 8 - LSI ready interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lsirdyie(&mut self) -> _LsirdyieW {
+                _LsirdyieW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB1 peripheral reset register" ]
+    pub struct Ahb1rstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB1 peripheral reset register" ]
+    pub mod ahb1rstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb1rstr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtghsrstR {
+            bits: u8,
+        }
+        impl OtghsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacrstR {
+            bits: u8,
+        }
+        impl EthmacrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma2rstR {
+            bits: u8,
+        }
+        impl Dma2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma1rstR {
+            bits: u8,
+        }
+        impl Dma1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcrstR {
+            bits: u8,
+        }
+        impl CrcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioirstR {
+            bits: u8,
+        }
+        impl GpioirstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiohrstR {
+            bits: u8,
+        }
+        impl GpiohrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiogrstR {
+            bits: u8,
+        }
+        impl GpiogrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiofrstR {
+            bits: u8,
+        }
+        impl GpiofrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioerstR {
+            bits: u8,
+        }
+        impl GpioerstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiodrstR {
+            bits: u8,
+        }
+        impl GpiodrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiocrstR {
+            bits: u8,
+        }
+        impl GpiocrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiobrstR {
+            bits: u8,
+        }
+        impl GpiobrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioarstR {
+            bits: u8,
+        }
+        impl GpioarstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtghsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtghsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioirstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioirstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiohrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiohrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiogrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiogrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiofrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiofrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioerstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioerstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiodrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiodrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiocrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiocrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiobrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiobrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioarstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioarstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - USB OTG HS module reset" ]
+            # [ inline ( always ) ]
+            pub fn otghsrst(&self) -> OtghsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtghsrstR { bits }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC reset" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrst(&self) -> EthmacrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacrstR { bits }
+            }
+            # [ doc = "Bit 22 - DMA2 reset" ]
+            # [ inline ( always ) ]
+            pub fn dma2rst(&self) -> Dma2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma2rstR { bits }
+            }
+            # [ doc = "Bit 21 - DMA2 reset" ]
+            # [ inline ( always ) ]
+            pub fn dma1rst(&self) -> Dma1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma1rstR { bits }
+            }
+            # [ doc = "Bit 12 - CRC reset" ]
+            # [ inline ( always ) ]
+            pub fn crcrst(&self) -> CrcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrcrstR { bits }
+            }
+            # [ doc = "Bit 8 - IO port I reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioirst(&self) -> GpioirstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioirstR { bits }
+            }
+            # [ doc = "Bit 7 - IO port H reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiohrst(&self) -> GpiohrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiohrstR { bits }
+            }
+            # [ doc = "Bit 6 - IO port G reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiogrst(&self) -> GpiogrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiogrstR { bits }
+            }
+            # [ doc = "Bit 5 - IO port F reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiofrst(&self) -> GpiofrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiofrstR { bits }
+            }
+            # [ doc = "Bit 4 - IO port E reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioerst(&self) -> GpioerstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioerstR { bits }
+            }
+            # [ doc = "Bit 3 - IO port D reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiodrst(&self) -> GpiodrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiodrstR { bits }
+            }
+            # [ doc = "Bit 2 - IO port C reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiocrst(&self) -> GpiocrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiocrstR { bits }
+            }
+            # [ doc = "Bit 1 - IO port B reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiobrst(&self) -> GpiobrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiobrstR { bits }
+            }
+            # [ doc = "Bit 0 - IO port A reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioarst(&self) -> GpioarstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioarstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - USB OTG HS module reset" ]
+            # [ inline ( always ) ]
+            pub fn otghsrst(&mut self) -> _OtghsrstW {
+                _OtghsrstW { w: self }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC reset" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrst(&mut self) -> _EthmacrstW {
+                _EthmacrstW { w: self }
+            }
+            # [ doc = "Bit 22 - DMA2 reset" ]
+            # [ inline ( always ) ]
+            pub fn dma2rst(&mut self) -> _Dma2rstW {
+                _Dma2rstW { w: self }
+            }
+            # [ doc = "Bit 21 - DMA2 reset" ]
+            # [ inline ( always ) ]
+            pub fn dma1rst(&mut self) -> _Dma1rstW {
+                _Dma1rstW { w: self }
+            }
+            # [ doc = "Bit 12 - CRC reset" ]
+            # [ inline ( always ) ]
+            pub fn crcrst(&mut self) -> _CrcrstW {
+                _CrcrstW { w: self }
+            }
+            # [ doc = "Bit 8 - IO port I reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioirst(&mut self) -> _GpioirstW {
+                _GpioirstW { w: self }
+            }
+            # [ doc = "Bit 7 - IO port H reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiohrst(&mut self) -> _GpiohrstW {
+                _GpiohrstW { w: self }
+            }
+            # [ doc = "Bit 6 - IO port G reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiogrst(&mut self) -> _GpiogrstW {
+                _GpiogrstW { w: self }
+            }
+            # [ doc = "Bit 5 - IO port F reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiofrst(&mut self) -> _GpiofrstW {
+                _GpiofrstW { w: self }
+            }
+            # [ doc = "Bit 4 - IO port E reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioerst(&mut self) -> _GpioerstW {
+                _GpioerstW { w: self }
+            }
+            # [ doc = "Bit 3 - IO port D reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiodrst(&mut self) -> _GpiodrstW {
+                _GpiodrstW { w: self }
+            }
+            # [ doc = "Bit 2 - IO port C reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiocrst(&mut self) -> _GpiocrstW {
+                _GpiocrstW { w: self }
+            }
+            # [ doc = "Bit 1 - IO port B reset" ]
+            # [ inline ( always ) ]
+            pub fn gpiobrst(&mut self) -> _GpiobrstW {
+                _GpiobrstW { w: self }
+            }
+            # [ doc = "Bit 0 - IO port A reset" ]
+            # [ inline ( always ) ]
+            pub fn gpioarst(&mut self) -> _GpioarstW {
+                _GpioarstW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB2 peripheral reset register" ]
+    pub struct Ahb2rstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB2 peripheral reset register" ]
+    pub mod ahb2rstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb2rstr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgfsrstR {
+            bits: u8,
+        }
+        impl OtgfsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RngrstR {
+            bits: u8,
+        }
+        impl RngrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcmirstR {
+            bits: u8,
+        }
+        impl DcmirstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtgfsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtgfsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RngrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RngrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcmirstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcmirstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - USB OTG FS module reset" ]
+            # [ inline ( always ) ]
+            pub fn otgfsrst(&self) -> OtgfsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgfsrstR { bits }
+            }
+            # [ doc = "Bit 6 - Random number generator module reset" ]
+            # [ inline ( always ) ]
+            pub fn rngrst(&self) -> RngrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RngrstR { bits }
+            }
+            # [ doc = "Bit 0 - Camera interface reset" ]
+            # [ inline ( always ) ]
+            pub fn dcmirst(&self) -> DcmirstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcmirstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - USB OTG FS module reset" ]
+            # [ inline ( always ) ]
+            pub fn otgfsrst(&mut self) -> _OtgfsrstW {
+                _OtgfsrstW { w: self }
+            }
+            # [ doc = "Bit 6 - Random number generator module reset" ]
+            # [ inline ( always ) ]
+            pub fn rngrst(&mut self) -> _RngrstW {
+                _RngrstW { w: self }
+            }
+            # [ doc = "Bit 0 - Camera interface reset" ]
+            # [ inline ( always ) ]
+            pub fn dcmirst(&mut self) -> _DcmirstW {
+                _DcmirstW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB3 peripheral reset register" ]
+    pub struct Ahb3rstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB3 peripheral reset register" ]
+    pub mod ahb3rstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb3rstr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsmcrstR {
+            bits: u8,
+        }
+        impl FsmcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FsmcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FsmcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module reset" ]
+            # [ inline ( always ) ]
+            pub fn fsmcrst(&self) -> FsmcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsmcrstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module reset" ]
+            # [ inline ( always ) ]
+            pub fn fsmcrst(&mut self) -> _FsmcrstW {
+                _FsmcrstW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB1 peripheral reset register" ]
+    pub struct Apb1rstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB1 peripheral reset register" ]
+    pub mod apb1rstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb1rstr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DacrstR {
+            bits: u8,
+        }
+        impl DacrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrrstR {
+            bits: u8,
+        }
+        impl PwrrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can2rstR {
+            bits: u8,
+        }
+        impl Can2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can1rstR {
+            bits: u8,
+        }
+        impl Can1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c3rstR {
+            bits: u8,
+        }
+        impl I2c3rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c2rstR {
+            bits: u8,
+        }
+        impl I2c2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c1rstR {
+            bits: u8,
+        }
+        impl I2c1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart5rstR {
+            bits: u8,
+        }
+        impl Uart5rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart4rstR {
+            bits: u8,
+        }
+        impl Uart4rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart3rstR {
+            bits: u8,
+        }
+        impl Uart3rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart2rstR {
+            bits: u8,
+        }
+        impl Uart2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi3rstR {
+            bits: u8,
+        }
+        impl Spi3rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi2rstR {
+            bits: u8,
+        }
+        impl Spi2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WwdgrstR {
+            bits: u8,
+        }
+        impl WwdgrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim14rstR {
+            bits: u8,
+        }
+        impl Tim14rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim13rstR {
+            bits: u8,
+        }
+        impl Tim13rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim12rstR {
+            bits: u8,
+        }
+        impl Tim12rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim7rstR {
+            bits: u8,
+        }
+        impl Tim7rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim6rstR {
+            bits: u8,
+        }
+        impl Tim6rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim5rstR {
+            bits: u8,
+        }
+        impl Tim5rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim4rstR {
+            bits: u8,
+        }
+        impl Tim4rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim3rstR {
+            bits: u8,
+        }
+        impl Tim3rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim2rstR {
+            bits: u8,
+        }
+        impl Tim2rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DacrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DacrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c3rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c3rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart5rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart5rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart4rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart4rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart3rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart3rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi3rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi3rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WwdgrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WwdgrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim14rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim14rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim13rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim13rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim12rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim12rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim7rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim7rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim6rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim6rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim5rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim5rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim4rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim4rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim3rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim3rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim2rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim2rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - DAC reset" ]
+            # [ inline ( always ) ]
+            pub fn dacrst(&self) -> DacrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DacrstR { bits }
+            }
+            # [ doc = "Bit 28 - Power interface reset" ]
+            # [ inline ( always ) ]
+            pub fn pwrrst(&self) -> PwrrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrrstR { bits }
+            }
+            # [ doc = "Bit 26 - CAN2 reset" ]
+            # [ inline ( always ) ]
+            pub fn can2rst(&self) -> Can2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can2rstR { bits }
+            }
+            # [ doc = "Bit 25 - CAN1 reset" ]
+            # [ inline ( always ) ]
+            pub fn can1rst(&self) -> Can1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can1rstR { bits }
+            }
+            # [ doc = "Bit 23 - I2C3 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c3rst(&self) -> I2c3rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c3rstR { bits }
+            }
+            # [ doc = "Bit 22 - I2C 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c2rst(&self) -> I2c2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c2rstR { bits }
+            }
+            # [ doc = "Bit 21 - I2C 1 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c1rst(&self) -> I2c1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c1rstR { bits }
+            }
+            # [ doc = "Bit 20 - USART 5 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart5rst(&self) -> Uart5rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart5rstR { bits }
+            }
+            # [ doc = "Bit 19 - USART 4 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart4rst(&self) -> Uart4rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart4rstR { bits }
+            }
+            # [ doc = "Bit 18 - USART 3 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart3rst(&self) -> Uart3rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart3rstR { bits }
+            }
+            # [ doc = "Bit 17 - USART 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart2rst(&self) -> Uart2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart2rstR { bits }
+            }
+            # [ doc = "Bit 15 - SPI 3 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi3rst(&self) -> Spi3rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi3rstR { bits }
+            }
+            # [ doc = "Bit 14 - SPI 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi2rst(&self) -> Spi2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi2rstR { bits }
+            }
+            # [ doc = "Bit 11 - Window watchdog reset" ]
+            # [ inline ( always ) ]
+            pub fn wwdgrst(&self) -> WwdgrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WwdgrstR { bits }
+            }
+            # [ doc = "Bit 8 - TIM14 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim14rst(&self) -> Tim14rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim14rstR { bits }
+            }
+            # [ doc = "Bit 7 - TIM13 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim13rst(&self) -> Tim13rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim13rstR { bits }
+            }
+            # [ doc = "Bit 6 - TIM12 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim12rst(&self) -> Tim12rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim12rstR { bits }
+            }
+            # [ doc = "Bit 5 - TIM7 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim7rst(&self) -> Tim7rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim7rstR { bits }
+            }
+            # [ doc = "Bit 4 - TIM6 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim6rst(&self) -> Tim6rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim6rstR { bits }
+            }
+            # [ doc = "Bit 3 - TIM5 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim5rst(&self) -> Tim5rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim5rstR { bits }
+            }
+            # [ doc = "Bit 2 - TIM4 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim4rst(&self) -> Tim4rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim4rstR { bits }
+            }
+            # [ doc = "Bit 1 - TIM3 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim3rst(&self) -> Tim3rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim3rstR { bits }
+            }
+            # [ doc = "Bit 0 - TIM2 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim2rst(&self) -> Tim2rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim2rstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - DAC reset" ]
+            # [ inline ( always ) ]
+            pub fn dacrst(&mut self) -> _DacrstW {
+                _DacrstW { w: self }
+            }
+            # [ doc = "Bit 28 - Power interface reset" ]
+            # [ inline ( always ) ]
+            pub fn pwrrst(&mut self) -> _PwrrstW {
+                _PwrrstW { w: self }
+            }
+            # [ doc = "Bit 26 - CAN2 reset" ]
+            # [ inline ( always ) ]
+            pub fn can2rst(&mut self) -> _Can2rstW {
+                _Can2rstW { w: self }
+            }
+            # [ doc = "Bit 25 - CAN1 reset" ]
+            # [ inline ( always ) ]
+            pub fn can1rst(&mut self) -> _Can1rstW {
+                _Can1rstW { w: self }
+            }
+            # [ doc = "Bit 23 - I2C3 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c3rst(&mut self) -> _I2c3rstW {
+                _I2c3rstW { w: self }
+            }
+            # [ doc = "Bit 22 - I2C 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c2rst(&mut self) -> _I2c2rstW {
+                _I2c2rstW { w: self }
+            }
+            # [ doc = "Bit 21 - I2C 1 reset" ]
+            # [ inline ( always ) ]
+            pub fn i2c1rst(&mut self) -> _I2c1rstW {
+                _I2c1rstW { w: self }
+            }
+            # [ doc = "Bit 20 - USART 5 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart5rst(&mut self) -> _Uart5rstW {
+                _Uart5rstW { w: self }
+            }
+            # [ doc = "Bit 19 - USART 4 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart4rst(&mut self) -> _Uart4rstW {
+                _Uart4rstW { w: self }
+            }
+            # [ doc = "Bit 18 - USART 3 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart3rst(&mut self) -> _Uart3rstW {
+                _Uart3rstW { w: self }
+            }
+            # [ doc = "Bit 17 - USART 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn uart2rst(&mut self) -> _Uart2rstW {
+                _Uart2rstW { w: self }
+            }
+            # [ doc = "Bit 15 - SPI 3 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi3rst(&mut self) -> _Spi3rstW {
+                _Spi3rstW { w: self }
+            }
+            # [ doc = "Bit 14 - SPI 2 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi2rst(&mut self) -> _Spi2rstW {
+                _Spi2rstW { w: self }
+            }
+            # [ doc = "Bit 11 - Window watchdog reset" ]
+            # [ inline ( always ) ]
+            pub fn wwdgrst(&mut self) -> _WwdgrstW {
+                _WwdgrstW { w: self }
+            }
+            # [ doc = "Bit 8 - TIM14 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim14rst(&mut self) -> _Tim14rstW {
+                _Tim14rstW { w: self }
+            }
+            # [ doc = "Bit 7 - TIM13 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim13rst(&mut self) -> _Tim13rstW {
+                _Tim13rstW { w: self }
+            }
+            # [ doc = "Bit 6 - TIM12 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim12rst(&mut self) -> _Tim12rstW {
+                _Tim12rstW { w: self }
+            }
+            # [ doc = "Bit 5 - TIM7 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim7rst(&mut self) -> _Tim7rstW {
+                _Tim7rstW { w: self }
+            }
+            # [ doc = "Bit 4 - TIM6 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim6rst(&mut self) -> _Tim6rstW {
+                _Tim6rstW { w: self }
+            }
+            # [ doc = "Bit 3 - TIM5 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim5rst(&mut self) -> _Tim5rstW {
+                _Tim5rstW { w: self }
+            }
+            # [ doc = "Bit 2 - TIM4 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim4rst(&mut self) -> _Tim4rstW {
+                _Tim4rstW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM3 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim3rst(&mut self) -> _Tim3rstW {
+                _Tim3rstW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM2 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim2rst(&mut self) -> _Tim2rstW {
+                _Tim2rstW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB2 peripheral reset register" ]
+    pub struct Apb2rstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB2 peripheral reset register" ]
+    pub mod apb2rstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb2rstr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim11rstR {
+            bits: u8,
+        }
+        impl Tim11rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim10rstR {
+            bits: u8,
+        }
+        impl Tim10rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim9rstR {
+            bits: u8,
+        }
+        impl Tim9rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SyscfgrstR {
+            bits: u8,
+        }
+        impl SyscfgrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi1rstR {
+            bits: u8,
+        }
+        impl Spi1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdiorstR {
+            bits: u8,
+        }
+        impl SdiorstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AdcrstR {
+            bits: u8,
+        }
+        impl AdcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart6rstR {
+            bits: u8,
+        }
+        impl Usart6rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart1rstR {
+            bits: u8,
+        }
+        impl Usart1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim8rstR {
+            bits: u8,
+        }
+        impl Tim8rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim1rstR {
+            bits: u8,
+        }
+        impl Tim1rstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim11rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim11rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim10rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim10rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim9rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim9rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SyscfgrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SyscfgrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdiorstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdiorstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AdcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AdcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart6rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart6rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim8rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim8rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim1rstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim1rstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 18 - TIM11 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim11rst(&self) -> Tim11rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim11rstR { bits }
+            }
+            # [ doc = "Bit 17 - TIM10 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim10rst(&self) -> Tim10rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim10rstR { bits }
+            }
+            # [ doc = "Bit 16 - TIM9 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim9rst(&self) -> Tim9rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim9rstR { bits }
+            }
+            # [ doc = "Bit 14 - System configuration controller reset" ]
+            # [ inline ( always ) ]
+            pub fn syscfgrst(&self) -> SyscfgrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SyscfgrstR { bits }
+            }
+            # [ doc = "Bit 12 - SPI 1 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi1rst(&self) -> Spi1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi1rstR { bits }
+            }
+            # [ doc = "Bit 11 - SDIO reset" ]
+            # [ inline ( always ) ]
+            pub fn sdiorst(&self) -> SdiorstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdiorstR { bits }
+            }
+            # [ doc = "Bit 8 - ADC interface reset (common to all ADCs)" ]
+            # [ inline ( always ) ]
+            pub fn adcrst(&self) -> AdcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AdcrstR { bits }
+            }
+            # [ doc = "Bit 5 - USART6 reset" ]
+            # [ inline ( always ) ]
+            pub fn usart6rst(&self) -> Usart6rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart6rstR { bits }
+            }
+            # [ doc = "Bit 4 - USART1 reset" ]
+            # [ inline ( always ) ]
+            pub fn usart1rst(&self) -> Usart1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart1rstR { bits }
+            }
+            # [ doc = "Bit 1 - TIM8 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim8rst(&self) -> Tim8rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim8rstR { bits }
+            }
+            # [ doc = "Bit 0 - TIM1 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim1rst(&self) -> Tim1rstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim1rstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 18 - TIM11 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim11rst(&mut self) -> _Tim11rstW {
+                _Tim11rstW { w: self }
+            }
+            # [ doc = "Bit 17 - TIM10 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim10rst(&mut self) -> _Tim10rstW {
+                _Tim10rstW { w: self }
+            }
+            # [ doc = "Bit 16 - TIM9 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim9rst(&mut self) -> _Tim9rstW {
+                _Tim9rstW { w: self }
+            }
+            # [ doc = "Bit 14 - System configuration controller reset" ]
+            # [ inline ( always ) ]
+            pub fn syscfgrst(&mut self) -> _SyscfgrstW {
+                _SyscfgrstW { w: self }
+            }
+            # [ doc = "Bit 12 - SPI 1 reset" ]
+            # [ inline ( always ) ]
+            pub fn spi1rst(&mut self) -> _Spi1rstW {
+                _Spi1rstW { w: self }
+            }
+            # [ doc = "Bit 11 - SDIO reset" ]
+            # [ inline ( always ) ]
+            pub fn sdiorst(&mut self) -> _SdiorstW {
+                _SdiorstW { w: self }
+            }
+            # [ doc = "Bit 8 - ADC interface reset (common to all ADCs)" ]
+            # [ inline ( always ) ]
+            pub fn adcrst(&mut self) -> _AdcrstW {
+                _AdcrstW { w: self }
+            }
+            # [ doc = "Bit 5 - USART6 reset" ]
+            # [ inline ( always ) ]
+            pub fn usart6rst(&mut self) -> _Usart6rstW {
+                _Usart6rstW { w: self }
+            }
+            # [ doc = "Bit 4 - USART1 reset" ]
+            # [ inline ( always ) ]
+            pub fn usart1rst(&mut self) -> _Usart1rstW {
+                _Usart1rstW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM8 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim8rst(&mut self) -> _Tim8rstW {
+                _Tim8rstW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM1 reset" ]
+            # [ inline ( always ) ]
+            pub fn tim1rst(&mut self) -> _Tim1rstW {
+                _Tim1rstW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB1 peripheral clock register" ]
+    pub struct Ahb1enr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB1 peripheral clock register" ]
+    pub mod ahb1enr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb1enr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtghsulpienR {
+            bits: u8,
+        }
+        impl OtghsulpienR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtghsenR {
+            bits: u8,
+        }
+        impl OtghsenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacptpenR {
+            bits: u8,
+        }
+        impl EthmacptpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacrxenR {
+            bits: u8,
+        }
+        impl EthmacrxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmactxenR {
+            bits: u8,
+        }
+        impl EthmactxenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacenR {
+            bits: u8,
+        }
+        impl EthmacenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma2enR {
+            bits: u8,
+        }
+        impl Dma2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma1enR {
+            bits: u8,
+        }
+        impl Dma1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpsramenR {
+            bits: u8,
+        }
+        impl BkpsramenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcenR {
+            bits: u8,
+        }
+        impl CrcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioienR {
+            bits: u8,
+        }
+        impl GpioienR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiohenR {
+            bits: u8,
+        }
+        impl GpiohenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiogenR {
+            bits: u8,
+        }
+        impl GpiogenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiofenR {
+            bits: u8,
+        }
+        impl GpiofenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioeenR {
+            bits: u8,
+        }
+        impl GpioeenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiodenR {
+            bits: u8,
+        }
+        impl GpiodenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiocenR {
+            bits: u8,
+        }
+        impl GpiocenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = "Possible values of the field `GPIOBEN`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum GpiobenR {
+            # [ doc = "0: Disable" ]
+            Disable,
+            # [ doc = "1: Enable" ]
+            Enable,
+        }
+        impl GpiobenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    GpiobenR::Disable => 0,
+                    GpiobenR::Enable => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> GpiobenR {
+                match bits {
+                    0 => GpiobenR::Disable,
+                    1 => GpiobenR::Enable,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `Disable`" ]
+            # [ inline ( always ) ]
+            pub fn is_disable(&self) -> bool {
+                *self == GpiobenR::Disable
+            }
+            # [ doc = "Checks if the value of the field is `Enable`" ]
+            # [ inline ( always ) ]
+            pub fn is_enable(&self) -> bool {
+                *self == GpiobenR::Enable
+            }
+        }
+        # [ doc = "Possible values of the field `GPIOAEN`" ]
+        pub type GpioaenR = GpiobenR;
+        # [ doc = r" Proxy" ]
+        pub struct _OtghsulpienW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtghsulpienW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtghsenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtghsenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacptpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacptpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacrxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacrxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmactxenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmactxenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpsramenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpsramenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioienW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioienW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiohenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiohenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiogenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiogenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiofenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiofenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioeenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioeenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiodenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiodenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiocenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiocenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `GPIOBEN`" ]
+        pub enum GpiobenW {
+            # [ doc = "0: Disable" ]
+            Disable,
+            # [ doc = "1: Enable" ]
+            Enable,
+        }
+        impl GpiobenW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    GpiobenW::Disable => 0,
+                    GpiobenW::Enable => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiobenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiobenW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: GpiobenW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Disable" ]
+            # [ inline ( always ) ]
+            pub fn disable(self) -> &'a mut W {
+                self.variant(GpiobenW::Disable)
+            }
+            # [ doc = "1: Enable" ]
+            # [ inline ( always ) ]
+            pub fn enable(self) -> &'a mut W {
+                self.variant(GpiobenW::Enable)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `GPIOAEN`" ]
+        pub type GpioaenW = GpiobenW;
+        # [ doc = r" Proxy" ]
+        pub struct _GpioaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioaenW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: GpioaenW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Disable" ]
+            # [ inline ( always ) ]
+            pub fn disable(self) -> &'a mut W {
+                self.variant(GpiobenW::Disable)
+            }
+            # [ doc = "1: Enable" ]
+            # [ inline ( always ) ]
+            pub fn enable(self) -> &'a mut W {
+                self.variant(GpiobenW::Enable)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 30 - USB OTG HSULPI clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otghsulpien(&self) -> OtghsulpienR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtghsulpienR { bits }
+            }
+            # [ doc = "Bit 29 - USB OTG HS clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otghsen(&self) -> OtghsenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtghsenR { bits }
+            }
+            # [ doc = "Bit 28 - Ethernet PTP clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacptpen(&self) -> EthmacptpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacptpenR { bits }
+            }
+            # [ doc = "Bit 27 - Ethernet Reception clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrxen(&self) -> EthmacrxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacrxenR { bits }
+            }
+            # [ doc = "Bit 26 - Ethernet Transmission clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmactxen(&self) -> EthmactxenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmactxenR { bits }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacen(&self) -> EthmacenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacenR { bits }
+            }
+            # [ doc = "Bit 22 - DMA2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dma2en(&self) -> Dma2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma2enR { bits }
+            }
+            # [ doc = "Bit 21 - DMA1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dma1en(&self) -> Dma1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma1enR { bits }
+            }
+            # [ doc = "Bit 18 - Backup SRAM interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn bkpsramen(&self) -> BkpsramenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BkpsramenR { bits }
+            }
+            # [ doc = "Bit 12 - CRC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn crcen(&self) -> CrcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrcenR { bits }
+            }
+            # [ doc = "Bit 8 - IO port I clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioien(&self) -> GpioienR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioienR { bits }
+            }
+            # [ doc = "Bit 7 - IO port H clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiohen(&self) -> GpiohenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiohenR { bits }
+            }
+            # [ doc = "Bit 6 - IO port G clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiogen(&self) -> GpiogenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiogenR { bits }
+            }
+            # [ doc = "Bit 5 - IO port F clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiofen(&self) -> GpiofenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiofenR { bits }
+            }
+            # [ doc = "Bit 4 - IO port E clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioeen(&self) -> GpioeenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioeenR { bits }
+            }
+            # [ doc = "Bit 3 - IO port D clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioden(&self) -> GpiodenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiodenR { bits }
+            }
+            # [ doc = "Bit 2 - IO port C clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiocen(&self) -> GpiocenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiocenR { bits }
+            }
+            # [ doc = "Bit 1 - IO port B clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioben(&self) -> GpiobenR {
+                GpiobenR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 1;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 0 - IO port A clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioaen(&self) -> GpioaenR {
+                GpioaenR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1048576 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 30 - USB OTG HSULPI clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otghsulpien(&mut self) -> _OtghsulpienW {
+                _OtghsulpienW { w: self }
+            }
+            # [ doc = "Bit 29 - USB OTG HS clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otghsen(&mut self) -> _OtghsenW {
+                _OtghsenW { w: self }
+            }
+            # [ doc = "Bit 28 - Ethernet PTP clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacptpen(&mut self) -> _EthmacptpenW {
+                _EthmacptpenW { w: self }
+            }
+            # [ doc = "Bit 27 - Ethernet Reception clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrxen(&mut self) -> _EthmacrxenW {
+                _EthmacrxenW { w: self }
+            }
+            # [ doc = "Bit 26 - Ethernet Transmission clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmactxen(&mut self) -> _EthmactxenW {
+                _EthmactxenW { w: self }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ethmacen(&mut self) -> _EthmacenW {
+                _EthmacenW { w: self }
+            }
+            # [ doc = "Bit 22 - DMA2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dma2en(&mut self) -> _Dma2enW {
+                _Dma2enW { w: self }
+            }
+            # [ doc = "Bit 21 - DMA1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dma1en(&mut self) -> _Dma1enW {
+                _Dma1enW { w: self }
+            }
+            # [ doc = "Bit 18 - Backup SRAM interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn bkpsramen(&mut self) -> _BkpsramenW {
+                _BkpsramenW { w: self }
+            }
+            # [ doc = "Bit 12 - CRC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn crcen(&mut self) -> _CrcenW {
+                _CrcenW { w: self }
+            }
+            # [ doc = "Bit 8 - IO port I clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioien(&mut self) -> _GpioienW {
+                _GpioienW { w: self }
+            }
+            # [ doc = "Bit 7 - IO port H clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiohen(&mut self) -> _GpiohenW {
+                _GpiohenW { w: self }
+            }
+            # [ doc = "Bit 6 - IO port G clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiogen(&mut self) -> _GpiogenW {
+                _GpiogenW { w: self }
+            }
+            # [ doc = "Bit 5 - IO port F clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiofen(&mut self) -> _GpiofenW {
+                _GpiofenW { w: self }
+            }
+            # [ doc = "Bit 4 - IO port E clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioeen(&mut self) -> _GpioeenW {
+                _GpioeenW { w: self }
+            }
+            # [ doc = "Bit 3 - IO port D clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioden(&mut self) -> _GpiodenW {
+                _GpiodenW { w: self }
+            }
+            # [ doc = "Bit 2 - IO port C clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpiocen(&mut self) -> _GpiocenW {
+                _GpiocenW { w: self }
+            }
+            # [ doc = "Bit 1 - IO port B clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioben(&mut self) -> _GpiobenW {
+                _GpiobenW { w: self }
+            }
+            # [ doc = "Bit 0 - IO port A clock enable" ]
+            # [ inline ( always ) ]
+            pub fn gpioaen(&mut self) -> _GpioaenW {
+                _GpioaenW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB2 peripheral clock enable register" ]
+    pub struct Ahb2enr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB2 peripheral clock enable register" ]
+    pub mod ahb2enr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb2enr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgfsenR {
+            bits: u8,
+        }
+        impl OtgfsenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RngenR {
+            bits: u8,
+        }
+        impl RngenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcmienR {
+            bits: u8,
+        }
+        impl DcmienR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtgfsenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtgfsenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RngenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RngenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcmienW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcmienW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - USB OTG FS clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otgfsen(&self) -> OtgfsenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgfsenR { bits }
+            }
+            # [ doc = "Bit 6 - Random number generator clock enable" ]
+            # [ inline ( always ) ]
+            pub fn rngen(&self) -> RngenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RngenR { bits }
+            }
+            # [ doc = "Bit 0 - Camera interface enable" ]
+            # [ inline ( always ) ]
+            pub fn dcmien(&self) -> DcmienR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcmienR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - USB OTG FS clock enable" ]
+            # [ inline ( always ) ]
+            pub fn otgfsen(&mut self) -> _OtgfsenW {
+                _OtgfsenW { w: self }
+            }
+            # [ doc = "Bit 6 - Random number generator clock enable" ]
+            # [ inline ( always ) ]
+            pub fn rngen(&mut self) -> _RngenW {
+                _RngenW { w: self }
+            }
+            # [ doc = "Bit 0 - Camera interface enable" ]
+            # [ inline ( always ) ]
+            pub fn dcmien(&mut self) -> _DcmienW {
+                _DcmienW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB3 peripheral clock enable register" ]
+    pub struct Ahb3enr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB3 peripheral clock enable register" ]
+    pub mod ahb3enr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb3enr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsmcenR {
+            bits: u8,
+        }
+        impl FsmcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FsmcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FsmcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module clock enable" ]
+            # [ inline ( always ) ]
+            pub fn fsmcen(&self) -> FsmcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsmcenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module clock enable" ]
+            # [ inline ( always ) ]
+            pub fn fsmcen(&mut self) -> _FsmcenW {
+                _FsmcenW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB1 peripheral clock enable register" ]
+    pub struct Apb1enr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB1 peripheral clock enable register" ]
+    pub mod apb1enr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb1enr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DacenR {
+            bits: u8,
+        }
+        impl DacenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrenR {
+            bits: u8,
+        }
+        impl PwrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can2enR {
+            bits: u8,
+        }
+        impl Can2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can1enR {
+            bits: u8,
+        }
+        impl Can1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c3enR {
+            bits: u8,
+        }
+        impl I2c3enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c2enR {
+            bits: u8,
+        }
+        impl I2c2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c1enR {
+            bits: u8,
+        }
+        impl I2c1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart5enR {
+            bits: u8,
+        }
+        impl Uart5enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart4enR {
+            bits: u8,
+        }
+        impl Uart4enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart3enR {
+            bits: u8,
+        }
+        impl Usart3enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart2enR {
+            bits: u8,
+        }
+        impl Usart2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi3enR {
+            bits: u8,
+        }
+        impl Spi3enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi2enR {
+            bits: u8,
+        }
+        impl Spi2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WwdgenR {
+            bits: u8,
+        }
+        impl WwdgenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim14enR {
+            bits: u8,
+        }
+        impl Tim14enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim13enR {
+            bits: u8,
+        }
+        impl Tim13enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim12enR {
+            bits: u8,
+        }
+        impl Tim12enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim7enR {
+            bits: u8,
+        }
+        impl Tim7enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim6enR {
+            bits: u8,
+        }
+        impl Tim6enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim5enR {
+            bits: u8,
+        }
+        impl Tim5enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim4enR {
+            bits: u8,
+        }
+        impl Tim4enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim3enR {
+            bits: u8,
+        }
+        impl Tim3enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim2enR {
+            bits: u8,
+        }
+        impl Tim2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DacenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DacenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c3enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c3enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart5enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart5enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart4enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart4enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart3enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart3enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi3enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi3enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WwdgenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WwdgenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim14enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim14enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim13enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim13enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim12enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim12enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim7enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim7enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim6enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim6enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim5enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim5enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim4enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim4enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim3enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim3enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - DAC interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dacen(&self) -> DacenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DacenR { bits }
+            }
+            # [ doc = "Bit 28 - Power interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn pwren(&self) -> PwrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrenR { bits }
+            }
+            # [ doc = "Bit 26 - CAN 2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn can2en(&self) -> Can2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can2enR { bits }
+            }
+            # [ doc = "Bit 25 - CAN 1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn can1en(&self) -> Can1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can1enR { bits }
+            }
+            # [ doc = "Bit 23 - I2C3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c3en(&self) -> I2c3enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c3enR { bits }
+            }
+            # [ doc = "Bit 22 - I2C2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c2en(&self) -> I2c2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c2enR { bits }
+            }
+            # [ doc = "Bit 21 - I2C1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c1en(&self) -> I2c1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c1enR { bits }
+            }
+            # [ doc = "Bit 20 - UART5 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn uart5en(&self) -> Uart5enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart5enR { bits }
+            }
+            # [ doc = "Bit 19 - UART4 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn uart4en(&self) -> Uart4enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart4enR { bits }
+            }
+            # [ doc = "Bit 18 - USART3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart3en(&self) -> Usart3enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart3enR { bits }
+            }
+            # [ doc = "Bit 17 - USART 2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart2en(&self) -> Usart2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart2enR { bits }
+            }
+            # [ doc = "Bit 15 - SPI3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi3en(&self) -> Spi3enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi3enR { bits }
+            }
+            # [ doc = "Bit 14 - SPI2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi2en(&self) -> Spi2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi2enR { bits }
+            }
+            # [ doc = "Bit 11 - Window watchdog clock enable" ]
+            # [ inline ( always ) ]
+            pub fn wwdgen(&self) -> WwdgenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WwdgenR { bits }
+            }
+            # [ doc = "Bit 8 - TIM14 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim14en(&self) -> Tim14enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim14enR { bits }
+            }
+            # [ doc = "Bit 7 - TIM13 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim13en(&self) -> Tim13enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim13enR { bits }
+            }
+            # [ doc = "Bit 6 - TIM12 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim12en(&self) -> Tim12enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim12enR { bits }
+            }
+            # [ doc = "Bit 5 - TIM7 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim7en(&self) -> Tim7enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim7enR { bits }
+            }
+            # [ doc = "Bit 4 - TIM6 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim6en(&self) -> Tim6enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim6enR { bits }
+            }
+            # [ doc = "Bit 3 - TIM5 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim5en(&self) -> Tim5enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim5enR { bits }
+            }
+            # [ doc = "Bit 2 - TIM4 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim4en(&self) -> Tim4enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim4enR { bits }
+            }
+            # [ doc = "Bit 1 - TIM3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim3en(&self) -> Tim3enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim3enR { bits }
+            }
+            # [ doc = "Bit 0 - TIM2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim2en(&self) -> Tim2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim2enR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - DAC interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn dacen(&mut self) -> _DacenW {
+                _DacenW { w: self }
+            }
+            # [ doc = "Bit 28 - Power interface clock enable" ]
+            # [ inline ( always ) ]
+            pub fn pwren(&mut self) -> _PwrenW {
+                _PwrenW { w: self }
+            }
+            # [ doc = "Bit 26 - CAN 2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn can2en(&mut self) -> _Can2enW {
+                _Can2enW { w: self }
+            }
+            # [ doc = "Bit 25 - CAN 1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn can1en(&mut self) -> _Can1enW {
+                _Can1enW { w: self }
+            }
+            # [ doc = "Bit 23 - I2C3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c3en(&mut self) -> _I2c3enW {
+                _I2c3enW { w: self }
+            }
+            # [ doc = "Bit 22 - I2C2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c2en(&mut self) -> _I2c2enW {
+                _I2c2enW { w: self }
+            }
+            # [ doc = "Bit 21 - I2C1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn i2c1en(&mut self) -> _I2c1enW {
+                _I2c1enW { w: self }
+            }
+            # [ doc = "Bit 20 - UART5 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn uart5en(&mut self) -> _Uart5enW {
+                _Uart5enW { w: self }
+            }
+            # [ doc = "Bit 19 - UART4 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn uart4en(&mut self) -> _Uart4enW {
+                _Uart4enW { w: self }
+            }
+            # [ doc = "Bit 18 - USART3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart3en(&mut self) -> _Usart3enW {
+                _Usart3enW { w: self }
+            }
+            # [ doc = "Bit 17 - USART 2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart2en(&mut self) -> _Usart2enW {
+                _Usart2enW { w: self }
+            }
+            # [ doc = "Bit 15 - SPI3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi3en(&mut self) -> _Spi3enW {
+                _Spi3enW { w: self }
+            }
+            # [ doc = "Bit 14 - SPI2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi2en(&mut self) -> _Spi2enW {
+                _Spi2enW { w: self }
+            }
+            # [ doc = "Bit 11 - Window watchdog clock enable" ]
+            # [ inline ( always ) ]
+            pub fn wwdgen(&mut self) -> _WwdgenW {
+                _WwdgenW { w: self }
+            }
+            # [ doc = "Bit 8 - TIM14 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim14en(&mut self) -> _Tim14enW {
+                _Tim14enW { w: self }
+            }
+            # [ doc = "Bit 7 - TIM13 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim13en(&mut self) -> _Tim13enW {
+                _Tim13enW { w: self }
+            }
+            # [ doc = "Bit 6 - TIM12 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim12en(&mut self) -> _Tim12enW {
+                _Tim12enW { w: self }
+            }
+            # [ doc = "Bit 5 - TIM7 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim7en(&mut self) -> _Tim7enW {
+                _Tim7enW { w: self }
+            }
+            # [ doc = "Bit 4 - TIM6 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim6en(&mut self) -> _Tim6enW {
+                _Tim6enW { w: self }
+            }
+            # [ doc = "Bit 3 - TIM5 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim5en(&mut self) -> _Tim5enW {
+                _Tim5enW { w: self }
+            }
+            # [ doc = "Bit 2 - TIM4 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim4en(&mut self) -> _Tim4enW {
+                _Tim4enW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim3en(&mut self) -> _Tim3enW {
+                _Tim3enW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim2en(&mut self) -> _Tim2enW {
+                _Tim2enW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB2 peripheral clock enable register" ]
+    pub struct Apb2enr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB2 peripheral clock enable register" ]
+    pub mod apb2enr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb2enr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim11enR {
+            bits: u8,
+        }
+        impl Tim11enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim10enR {
+            bits: u8,
+        }
+        impl Tim10enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim9enR {
+            bits: u8,
+        }
+        impl Tim9enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SyscfgenR {
+            bits: u8,
+        }
+        impl SyscfgenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi1enR {
+            bits: u8,
+        }
+        impl Spi1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdioenR {
+            bits: u8,
+        }
+        impl SdioenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc3enR {
+            bits: u8,
+        }
+        impl Adc3enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc2enR {
+            bits: u8,
+        }
+        impl Adc2enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc1enR {
+            bits: u8,
+        }
+        impl Adc1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart6enR {
+            bits: u8,
+        }
+        impl Usart6enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart1enR {
+            bits: u8,
+        }
+        impl Usart1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim8enR {
+            bits: u8,
+        }
+        impl Tim8enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim1enR {
+            bits: u8,
+        }
+        impl Tim1enR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim11enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim11enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim10enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim10enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim9enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim9enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SyscfgenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SyscfgenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdioenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdioenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc3enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc3enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc2enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc2enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart6enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart6enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim8enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim8enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim1enW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim1enW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 18 - TIM11 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim11en(&self) -> Tim11enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim11enR { bits }
+            }
+            # [ doc = "Bit 17 - TIM10 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim10en(&self) -> Tim10enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim10enR { bits }
+            }
+            # [ doc = "Bit 16 - TIM9 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim9en(&self) -> Tim9enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim9enR { bits }
+            }
+            # [ doc = "Bit 14 - System configuration controller clock enable" ]
+            # [ inline ( always ) ]
+            pub fn syscfgen(&self) -> SyscfgenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SyscfgenR { bits }
+            }
+            # [ doc = "Bit 12 - SPI1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi1en(&self) -> Spi1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi1enR { bits }
+            }
+            # [ doc = "Bit 11 - SDIO clock enable" ]
+            # [ inline ( always ) ]
+            pub fn sdioen(&self) -> SdioenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdioenR { bits }
+            }
+            # [ doc = "Bit 10 - ADC3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc3en(&self) -> Adc3enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc3enR { bits }
+            }
+            # [ doc = "Bit 9 - ADC2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc2en(&self) -> Adc2enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc2enR { bits }
+            }
+            # [ doc = "Bit 8 - ADC1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc1en(&self) -> Adc1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc1enR { bits }
+            }
+            # [ doc = "Bit 5 - USART6 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart6en(&self) -> Usart6enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart6enR { bits }
+            }
+            # [ doc = "Bit 4 - USART1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart1en(&self) -> Usart1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart1enR { bits }
+            }
+            # [ doc = "Bit 1 - TIM8 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim8en(&self) -> Tim8enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim8enR { bits }
+            }
+            # [ doc = "Bit 0 - TIM1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim1en(&self) -> Tim1enR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim1enR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 18 - TIM11 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim11en(&mut self) -> _Tim11enW {
+                _Tim11enW { w: self }
+            }
+            # [ doc = "Bit 17 - TIM10 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim10en(&mut self) -> _Tim10enW {
+                _Tim10enW { w: self }
+            }
+            # [ doc = "Bit 16 - TIM9 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim9en(&mut self) -> _Tim9enW {
+                _Tim9enW { w: self }
+            }
+            # [ doc = "Bit 14 - System configuration controller clock enable" ]
+            # [ inline ( always ) ]
+            pub fn syscfgen(&mut self) -> _SyscfgenW {
+                _SyscfgenW { w: self }
+            }
+            # [ doc = "Bit 12 - SPI1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn spi1en(&mut self) -> _Spi1enW {
+                _Spi1enW { w: self }
+            }
+            # [ doc = "Bit 11 - SDIO clock enable" ]
+            # [ inline ( always ) ]
+            pub fn sdioen(&mut self) -> _SdioenW {
+                _SdioenW { w: self }
+            }
+            # [ doc = "Bit 10 - ADC3 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc3en(&mut self) -> _Adc3enW {
+                _Adc3enW { w: self }
+            }
+            # [ doc = "Bit 9 - ADC2 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc2en(&mut self) -> _Adc2enW {
+                _Adc2enW { w: self }
+            }
+            # [ doc = "Bit 8 - ADC1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn adc1en(&mut self) -> _Adc1enW {
+                _Adc1enW { w: self }
+            }
+            # [ doc = "Bit 5 - USART6 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart6en(&mut self) -> _Usart6enW {
+                _Usart6enW { w: self }
+            }
+            # [ doc = "Bit 4 - USART1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn usart1en(&mut self) -> _Usart1enW {
+                _Usart1enW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM8 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim8en(&mut self) -> _Tim8enW {
+                _Tim8enW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM1 clock enable" ]
+            # [ inline ( always ) ]
+            pub fn tim1en(&mut self) -> _Tim1enW {
+                _Tim1enW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB1 peripheral clock enable in low power mode register" ]
+    pub struct Ahb1lpenr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB1 peripheral clock enable in low power mode register" ]
+    pub mod ahb1lpenr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb1lpenr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtghsulpilpenR {
+            bits: u8,
+        }
+        impl OtghsulpilpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtghslpenR {
+            bits: u8,
+        }
+        impl OtghslpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacptplpenR {
+            bits: u8,
+        }
+        impl EthmacptplpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmacrxlpenR {
+            bits: u8,
+        }
+        impl EthmacrxlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmactxlpenR {
+            bits: u8,
+        }
+        impl EthmactxlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EthmaclpenR {
+            bits: u8,
+        }
+        impl EthmaclpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma2lpenR {
+            bits: u8,
+        }
+        impl Dma2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dma1lpenR {
+            bits: u8,
+        }
+        impl Dma1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpsramlpenR {
+            bits: u8,
+        }
+        impl BkpsramlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sram2lpenR {
+            bits: u8,
+        }
+        impl Sram2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sram1lpenR {
+            bits: u8,
+        }
+        impl Sram1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FlitflpenR {
+            bits: u8,
+        }
+        impl FlitflpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrclpenR {
+            bits: u8,
+        }
+        impl CrclpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioilpenR {
+            bits: u8,
+        }
+        impl GpioilpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiohlpenR {
+            bits: u8,
+        }
+        impl GpiohlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioglpenR {
+            bits: u8,
+        }
+        impl GpioglpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioflpenR {
+            bits: u8,
+        }
+        impl GpioflpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioelpenR {
+            bits: u8,
+        }
+        impl GpioelpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpiodlpenR {
+            bits: u8,
+        }
+        impl GpiodlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioclpenR {
+            bits: u8,
+        }
+        impl GpioclpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioblpenR {
+            bits: u8,
+        }
+        impl GpioblpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GpioalpenR {
+            bits: u8,
+        }
+        impl GpioalpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtghsulpilpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtghsulpilpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtghslpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtghslpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacptplpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacptplpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmacrxlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmacrxlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmactxlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmactxlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EthmaclpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EthmaclpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dma1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dma1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpsramlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpsramlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sram2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sram2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sram1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sram1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FlitflpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FlitflpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrclpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrclpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioilpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioilpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiohlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiohlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioglpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioglpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioflpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioflpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioelpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioelpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpiodlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpiodlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioclpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioclpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioblpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioblpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GpioalpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GpioalpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 30 - USB OTG HS ULPI clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otghsulpilpen(&self) -> OtghsulpilpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtghsulpilpenR { bits }
+            }
+            # [ doc = "Bit 29 - USB OTG HS clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otghslpen(&self) -> OtghslpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtghslpenR { bits }
+            }
+            # [ doc = "Bit 28 - Ethernet PTP clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmacptplpen(&self) -> EthmacptplpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacptplpenR { bits }
+            }
+            # [ doc = "Bit 27 - Ethernet reception clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrxlpen(&self) -> EthmacrxlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmacrxlpenR { bits }
+            }
+            # [ doc = "Bit 26 - Ethernet transmission clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmactxlpen(&self) -> EthmactxlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmactxlpenR { bits }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmaclpen(&self) -> EthmaclpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EthmaclpenR { bits }
+            }
+            # [ doc = "Bit 22 - DMA2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dma2lpen(&self) -> Dma2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma2lpenR { bits }
+            }
+            # [ doc = "Bit 21 - DMA1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dma1lpen(&self) -> Dma1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dma1lpenR { bits }
+            }
+            # [ doc = "Bit 18 - Backup SRAM interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn bkpsramlpen(&self) -> BkpsramlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BkpsramlpenR { bits }
+            }
+            # [ doc = "Bit 17 - SRAM 2 interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sram2lpen(&self) -> Sram2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sram2lpenR { bits }
+            }
+            # [ doc = "Bit 16 - SRAM 1interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sram1lpen(&self) -> Sram1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sram1lpenR { bits }
+            }
+            # [ doc = "Bit 15 - Flash interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn flitflpen(&self) -> FlitflpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FlitflpenR { bits }
+            }
+            # [ doc = "Bit 12 - CRC clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn crclpen(&self) -> CrclpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrclpenR { bits }
+            }
+            # [ doc = "Bit 8 - IO port I clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioilpen(&self) -> GpioilpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioilpenR { bits }
+            }
+            # [ doc = "Bit 7 - IO port H clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpiohlpen(&self) -> GpiohlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiohlpenR { bits }
+            }
+            # [ doc = "Bit 6 - IO port G clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioglpen(&self) -> GpioglpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioglpenR { bits }
+            }
+            # [ doc = "Bit 5 - IO port F clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioflpen(&self) -> GpioflpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioflpenR { bits }
+            }
+            # [ doc = "Bit 4 - IO port E clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioelpen(&self) -> GpioelpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioelpenR { bits }
+            }
+            # [ doc = "Bit 3 - IO port D clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpiodlpen(&self) -> GpiodlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpiodlpenR { bits }
+            }
+            # [ doc = "Bit 2 - IO port C clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioclpen(&self) -> GpioclpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioclpenR { bits }
+            }
+            # [ doc = "Bit 1 - IO port B clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioblpen(&self) -> GpioblpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioblpenR { bits }
+            }
+            # [ doc = "Bit 0 - IO port A clock enable during sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioalpen(&self) -> GpioalpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GpioalpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2120716799 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 30 - USB OTG HS ULPI clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otghsulpilpen(&mut self) -> _OtghsulpilpenW {
+                _OtghsulpilpenW { w: self }
+            }
+            # [ doc = "Bit 29 - USB OTG HS clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otghslpen(&mut self) -> _OtghslpenW {
+                _OtghslpenW { w: self }
+            }
+            # [ doc = "Bit 28 - Ethernet PTP clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmacptplpen(&mut self) -> _EthmacptplpenW {
+                _EthmacptplpenW { w: self }
+            }
+            # [ doc = "Bit 27 - Ethernet reception clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmacrxlpen(&mut self) -> _EthmacrxlpenW {
+                _EthmacrxlpenW { w: self }
+            }
+            # [ doc = "Bit 26 - Ethernet transmission clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmactxlpen(&mut self) -> _EthmactxlpenW {
+                _EthmactxlpenW { w: self }
+            }
+            # [ doc = "Bit 25 - Ethernet MAC clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn ethmaclpen(&mut self) -> _EthmaclpenW {
+                _EthmaclpenW { w: self }
+            }
+            # [ doc = "Bit 22 - DMA2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dma2lpen(&mut self) -> _Dma2lpenW {
+                _Dma2lpenW { w: self }
+            }
+            # [ doc = "Bit 21 - DMA1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dma1lpen(&mut self) -> _Dma1lpenW {
+                _Dma1lpenW { w: self }
+            }
+            # [ doc = "Bit 18 - Backup SRAM interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn bkpsramlpen(&mut self) -> _BkpsramlpenW {
+                _BkpsramlpenW { w: self }
+            }
+            # [ doc = "Bit 17 - SRAM 2 interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sram2lpen(&mut self) -> _Sram2lpenW {
+                _Sram2lpenW { w: self }
+            }
+            # [ doc = "Bit 16 - SRAM 1interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sram1lpen(&mut self) -> _Sram1lpenW {
+                _Sram1lpenW { w: self }
+            }
+            # [ doc = "Bit 15 - Flash interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn flitflpen(&mut self) -> _FlitflpenW {
+                _FlitflpenW { w: self }
+            }
+            # [ doc = "Bit 12 - CRC clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn crclpen(&mut self) -> _CrclpenW {
+                _CrclpenW { w: self }
+            }
+            # [ doc = "Bit 8 - IO port I clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioilpen(&mut self) -> _GpioilpenW {
+                _GpioilpenW { w: self }
+            }
+            # [ doc = "Bit 7 - IO port H clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpiohlpen(&mut self) -> _GpiohlpenW {
+                _GpiohlpenW { w: self }
+            }
+            # [ doc = "Bit 6 - IO port G clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioglpen(&mut self) -> _GpioglpenW {
+                _GpioglpenW { w: self }
+            }
+            # [ doc = "Bit 5 - IO port F clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioflpen(&mut self) -> _GpioflpenW {
+                _GpioflpenW { w: self }
+            }
+            # [ doc = "Bit 4 - IO port E clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioelpen(&mut self) -> _GpioelpenW {
+                _GpioelpenW { w: self }
+            }
+            # [ doc = "Bit 3 - IO port D clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpiodlpen(&mut self) -> _GpiodlpenW {
+                _GpiodlpenW { w: self }
+            }
+            # [ doc = "Bit 2 - IO port C clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioclpen(&mut self) -> _GpioclpenW {
+                _GpioclpenW { w: self }
+            }
+            # [ doc = "Bit 1 - IO port B clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioblpen(&mut self) -> _GpioblpenW {
+                _GpioblpenW { w: self }
+            }
+            # [ doc = "Bit 0 - IO port A clock enable during sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn gpioalpen(&mut self) -> _GpioalpenW {
+                _GpioalpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB2 peripheral clock enable in low power mode register" ]
+    pub struct Ahb2lpenr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB2 peripheral clock enable in low power mode register" ]
+    pub mod ahb2lpenr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb2lpenr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgfslpenR {
+            bits: u8,
+        }
+        impl OtgfslpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RnglpenR {
+            bits: u8,
+        }
+        impl RnglpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcmilpenR {
+            bits: u8,
+        }
+        impl DcmilpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtgfslpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtgfslpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RnglpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RnglpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcmilpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcmilpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - USB OTG FS clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otgfslpen(&self) -> OtgfslpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgfslpenR { bits }
+            }
+            # [ doc = "Bit 6 - Random number generator clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn rnglpen(&self) -> RnglpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RnglpenR { bits }
+            }
+            # [ doc = "Bit 0 - Camera interface enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dcmilpen(&self) -> DcmilpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcmilpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 241 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - USB OTG FS clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn otgfslpen(&mut self) -> _OtgfslpenW {
+                _OtgfslpenW { w: self }
+            }
+            # [ doc = "Bit 6 - Random number generator clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn rnglpen(&mut self) -> _RnglpenW {
+                _RnglpenW { w: self }
+            }
+            # [ doc = "Bit 0 - Camera interface enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn dcmilpen(&mut self) -> _DcmilpenW {
+                _DcmilpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "AHB3 peripheral clock enable in low power mode register" ]
+    pub struct Ahb3lpenr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "AHB3 peripheral clock enable in low power mode register" ]
+    pub mod ahb3lpenr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ahb3lpenr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsmclpenR {
+            bits: u8,
+        }
+        impl FsmclpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FsmclpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FsmclpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn fsmclpen(&self) -> FsmclpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsmclpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Flexible static memory controller module clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn fsmclpen(&mut self) -> _FsmclpenW {
+                _FsmclpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB1 peripheral clock enable in low power mode register" ]
+    pub struct Apb1lpenr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB1 peripheral clock enable in low power mode register" ]
+    pub mod apb1lpenr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb1lpenr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DaclpenR {
+            bits: u8,
+        }
+        impl DaclpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrlpenR {
+            bits: u8,
+        }
+        impl PwrlpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can2lpenR {
+            bits: u8,
+        }
+        impl Can2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can1lpenR {
+            bits: u8,
+        }
+        impl Can1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c3lpenR {
+            bits: u8,
+        }
+        impl I2c3lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c2lpenR {
+            bits: u8,
+        }
+        impl I2c2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2c1lpenR {
+            bits: u8,
+        }
+        impl I2c1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart5lpenR {
+            bits: u8,
+        }
+        impl Uart5lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Uart4lpenR {
+            bits: u8,
+        }
+        impl Uart4lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart3lpenR {
+            bits: u8,
+        }
+        impl Usart3lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart2lpenR {
+            bits: u8,
+        }
+        impl Usart2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi3lpenR {
+            bits: u8,
+        }
+        impl Spi3lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi2lpenR {
+            bits: u8,
+        }
+        impl Spi2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WwdglpenR {
+            bits: u8,
+        }
+        impl WwdglpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim14lpenR {
+            bits: u8,
+        }
+        impl Tim14lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim13lpenR {
+            bits: u8,
+        }
+        impl Tim13lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim12lpenR {
+            bits: u8,
+        }
+        impl Tim12lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim7lpenR {
+            bits: u8,
+        }
+        impl Tim7lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim6lpenR {
+            bits: u8,
+        }
+        impl Tim6lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim5lpenR {
+            bits: u8,
+        }
+        impl Tim5lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim4lpenR {
+            bits: u8,
+        }
+        impl Tim4lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim3lpenR {
+            bits: u8,
+        }
+        impl Tim3lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim2lpenR {
+            bits: u8,
+        }
+        impl Tim2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DaclpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DaclpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrlpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrlpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c3lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c3lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2c1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2c1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart5lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart5lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Uart4lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Uart4lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart3lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart3lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi3lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi3lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WwdglpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WwdglpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim14lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim14lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim13lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim13lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim12lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim12lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim7lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim7lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim6lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim6lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim5lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim5lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim4lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim4lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim3lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim3lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - DAC interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn daclpen(&self) -> DaclpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DaclpenR { bits }
+            }
+            # [ doc = "Bit 28 - Power interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn pwrlpen(&self) -> PwrlpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrlpenR { bits }
+            }
+            # [ doc = "Bit 26 - CAN 2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn can2lpen(&self) -> Can2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can2lpenR { bits }
+            }
+            # [ doc = "Bit 25 - CAN 1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn can1lpen(&self) -> Can1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can1lpenR { bits }
+            }
+            # [ doc = "Bit 23 - I2C3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c3lpen(&self) -> I2c3lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c3lpenR { bits }
+            }
+            # [ doc = "Bit 22 - I2C2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c2lpen(&self) -> I2c2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c2lpenR { bits }
+            }
+            # [ doc = "Bit 21 - I2C1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c1lpen(&self) -> I2c1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2c1lpenR { bits }
+            }
+            # [ doc = "Bit 20 - UART5 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn uart5lpen(&self) -> Uart5lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart5lpenR { bits }
+            }
+            # [ doc = "Bit 19 - UART4 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn uart4lpen(&self) -> Uart4lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Uart4lpenR { bits }
+            }
+            # [ doc = "Bit 18 - USART3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart3lpen(&self) -> Usart3lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart3lpenR { bits }
+            }
+            # [ doc = "Bit 17 - USART2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart2lpen(&self) -> Usart2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart2lpenR { bits }
+            }
+            # [ doc = "Bit 15 - SPI3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi3lpen(&self) -> Spi3lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi3lpenR { bits }
+            }
+            # [ doc = "Bit 14 - SPI2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi2lpen(&self) -> Spi2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi2lpenR { bits }
+            }
+            # [ doc = "Bit 11 - Window watchdog clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn wwdglpen(&self) -> WwdglpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WwdglpenR { bits }
+            }
+            # [ doc = "Bit 8 - TIM14 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim14lpen(&self) -> Tim14lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim14lpenR { bits }
+            }
+            # [ doc = "Bit 7 - TIM13 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim13lpen(&self) -> Tim13lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim13lpenR { bits }
+            }
+            # [ doc = "Bit 6 - TIM12 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim12lpen(&self) -> Tim12lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim12lpenR { bits }
+            }
+            # [ doc = "Bit 5 - TIM7 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim7lpen(&self) -> Tim7lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim7lpenR { bits }
+            }
+            # [ doc = "Bit 4 - TIM6 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim6lpen(&self) -> Tim6lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim6lpenR { bits }
+            }
+            # [ doc = "Bit 3 - TIM5 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim5lpen(&self) -> Tim5lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim5lpenR { bits }
+            }
+            # [ doc = "Bit 2 - TIM4 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim4lpen(&self) -> Tim4lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim4lpenR { bits }
+            }
+            # [ doc = "Bit 1 - TIM3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim3lpen(&self) -> Tim3lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim3lpenR { bits }
+            }
+            # [ doc = "Bit 0 - TIM2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim2lpen(&self) -> Tim2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim2lpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 922667519 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - DAC interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn daclpen(&mut self) -> _DaclpenW {
+                _DaclpenW { w: self }
+            }
+            # [ doc = "Bit 28 - Power interface clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn pwrlpen(&mut self) -> _PwrlpenW {
+                _PwrlpenW { w: self }
+            }
+            # [ doc = "Bit 26 - CAN 2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn can2lpen(&mut self) -> _Can2lpenW {
+                _Can2lpenW { w: self }
+            }
+            # [ doc = "Bit 25 - CAN 1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn can1lpen(&mut self) -> _Can1lpenW {
+                _Can1lpenW { w: self }
+            }
+            # [ doc = "Bit 23 - I2C3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c3lpen(&mut self) -> _I2c3lpenW {
+                _I2c3lpenW { w: self }
+            }
+            # [ doc = "Bit 22 - I2C2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c2lpen(&mut self) -> _I2c2lpenW {
+                _I2c2lpenW { w: self }
+            }
+            # [ doc = "Bit 21 - I2C1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn i2c1lpen(&mut self) -> _I2c1lpenW {
+                _I2c1lpenW { w: self }
+            }
+            # [ doc = "Bit 20 - UART5 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn uart5lpen(&mut self) -> _Uart5lpenW {
+                _Uart5lpenW { w: self }
+            }
+            # [ doc = "Bit 19 - UART4 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn uart4lpen(&mut self) -> _Uart4lpenW {
+                _Uart4lpenW { w: self }
+            }
+            # [ doc = "Bit 18 - USART3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart3lpen(&mut self) -> _Usart3lpenW {
+                _Usart3lpenW { w: self }
+            }
+            # [ doc = "Bit 17 - USART2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart2lpen(&mut self) -> _Usart2lpenW {
+                _Usart2lpenW { w: self }
+            }
+            # [ doc = "Bit 15 - SPI3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi3lpen(&mut self) -> _Spi3lpenW {
+                _Spi3lpenW { w: self }
+            }
+            # [ doc = "Bit 14 - SPI2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi2lpen(&mut self) -> _Spi2lpenW {
+                _Spi2lpenW { w: self }
+            }
+            # [ doc = "Bit 11 - Window watchdog clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn wwdglpen(&mut self) -> _WwdglpenW {
+                _WwdglpenW { w: self }
+            }
+            # [ doc = "Bit 8 - TIM14 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim14lpen(&mut self) -> _Tim14lpenW {
+                _Tim14lpenW { w: self }
+            }
+            # [ doc = "Bit 7 - TIM13 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim13lpen(&mut self) -> _Tim13lpenW {
+                _Tim13lpenW { w: self }
+            }
+            # [ doc = "Bit 6 - TIM12 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim12lpen(&mut self) -> _Tim12lpenW {
+                _Tim12lpenW { w: self }
+            }
+            # [ doc = "Bit 5 - TIM7 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim7lpen(&mut self) -> _Tim7lpenW {
+                _Tim7lpenW { w: self }
+            }
+            # [ doc = "Bit 4 - TIM6 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim6lpen(&mut self) -> _Tim6lpenW {
+                _Tim6lpenW { w: self }
+            }
+            # [ doc = "Bit 3 - TIM5 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim5lpen(&mut self) -> _Tim5lpenW {
+                _Tim5lpenW { w: self }
+            }
+            # [ doc = "Bit 2 - TIM4 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim4lpen(&mut self) -> _Tim4lpenW {
+                _Tim4lpenW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim3lpen(&mut self) -> _Tim3lpenW {
+                _Tim3lpenW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim2lpen(&mut self) -> _Tim2lpenW {
+                _Tim2lpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "APB2 peripheral clock enabled in low power mode register" ]
+    pub struct Apb2lpenr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "APB2 peripheral clock enabled in low power mode register" ]
+    pub mod apb2lpenr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Apb2lpenr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim11lpenR {
+            bits: u8,
+        }
+        impl Tim11lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim10lpenR {
+            bits: u8,
+        }
+        impl Tim10lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim9lpenR {
+            bits: u8,
+        }
+        impl Tim9lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SyscfglpenR {
+            bits: u8,
+        }
+        impl SyscfglpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Spi1lpenR {
+            bits: u8,
+        }
+        impl Spi1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdiolpenR {
+            bits: u8,
+        }
+        impl SdiolpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc3lpenR {
+            bits: u8,
+        }
+        impl Adc3lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc2lpenR {
+            bits: u8,
+        }
+        impl Adc2lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Adc1lpenR {
+            bits: u8,
+        }
+        impl Adc1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart6lpenR {
+            bits: u8,
+        }
+        impl Usart6lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Usart1lpenR {
+            bits: u8,
+        }
+        impl Usart1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim8lpenR {
+            bits: u8,
+        }
+        impl Tim8lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tim1lpenR {
+            bits: u8,
+        }
+        impl Tim1lpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim11lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim11lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim10lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim10lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim9lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim9lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SyscfglpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SyscfglpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Spi1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Spi1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdiolpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdiolpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc3lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc3lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc2lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc2lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart6lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart6lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Usart1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Usart1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim8lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim8lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tim1lpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tim1lpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 18 - TIM11 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim11lpen(&self) -> Tim11lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim11lpenR { bits }
+            }
+            # [ doc = "Bit 17 - TIM10 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim10lpen(&self) -> Tim10lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim10lpenR { bits }
+            }
+            # [ doc = "Bit 16 - TIM9 clock enable during sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim9lpen(&self) -> Tim9lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim9lpenR { bits }
+            }
+            # [ doc = "Bit 14 - System configuration controller clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn syscfglpen(&self) -> SyscfglpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SyscfglpenR { bits }
+            }
+            # [ doc = "Bit 12 - SPI 1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi1lpen(&self) -> Spi1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Spi1lpenR { bits }
+            }
+            # [ doc = "Bit 11 - SDIO clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sdiolpen(&self) -> SdiolpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdiolpenR { bits }
+            }
+            # [ doc = "Bit 10 - ADC 3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc3lpen(&self) -> Adc3lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc3lpenR { bits }
+            }
+            # [ doc = "Bit 9 - ADC2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc2lpen(&self) -> Adc2lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc2lpenR { bits }
+            }
+            # [ doc = "Bit 8 - ADC1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc1lpen(&self) -> Adc1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Adc1lpenR { bits }
+            }
+            # [ doc = "Bit 5 - USART6 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart6lpen(&self) -> Usart6lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart6lpenR { bits }
+            }
+            # [ doc = "Bit 4 - USART1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart1lpen(&self) -> Usart1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Usart1lpenR { bits }
+            }
+            # [ doc = "Bit 1 - TIM8 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim8lpen(&self) -> Tim8lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim8lpenR { bits }
+            }
+            # [ doc = "Bit 0 - TIM1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim1lpen(&self) -> Tim1lpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tim1lpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 483123 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 18 - TIM11 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim11lpen(&mut self) -> _Tim11lpenW {
+                _Tim11lpenW { w: self }
+            }
+            # [ doc = "Bit 17 - TIM10 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim10lpen(&mut self) -> _Tim10lpenW {
+                _Tim10lpenW { w: self }
+            }
+            # [ doc = "Bit 16 - TIM9 clock enable during sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim9lpen(&mut self) -> _Tim9lpenW {
+                _Tim9lpenW { w: self }
+            }
+            # [ doc = "Bit 14 - System configuration controller clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn syscfglpen(&mut self) -> _SyscfglpenW {
+                _SyscfglpenW { w: self }
+            }
+            # [ doc = "Bit 12 - SPI 1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn spi1lpen(&mut self) -> _Spi1lpenW {
+                _Spi1lpenW { w: self }
+            }
+            # [ doc = "Bit 11 - SDIO clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn sdiolpen(&mut self) -> _SdiolpenW {
+                _SdiolpenW { w: self }
+            }
+            # [ doc = "Bit 10 - ADC 3 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc3lpen(&mut self) -> _Adc3lpenW {
+                _Adc3lpenW { w: self }
+            }
+            # [ doc = "Bit 9 - ADC2 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc2lpen(&mut self) -> _Adc2lpenW {
+                _Adc2lpenW { w: self }
+            }
+            # [ doc = "Bit 8 - ADC1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn adc1lpen(&mut self) -> _Adc1lpenW {
+                _Adc1lpenW { w: self }
+            }
+            # [ doc = "Bit 5 - USART6 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart6lpen(&mut self) -> _Usart6lpenW {
+                _Usart6lpenW { w: self }
+            }
+            # [ doc = "Bit 4 - USART1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn usart1lpen(&mut self) -> _Usart1lpenW {
+                _Usart1lpenW { w: self }
+            }
+            # [ doc = "Bit 1 - TIM8 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim8lpen(&mut self) -> _Tim8lpenW {
+                _Tim8lpenW { w: self }
+            }
+            # [ doc = "Bit 0 - TIM1 clock enable during Sleep mode" ]
+            # [ inline ( always ) ]
+            pub fn tim1lpen(&mut self) -> _Tim1lpenW {
+                _Tim1lpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "Backup domain control register" ]
+    pub struct Bdcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Backup domain control register" ]
+    pub mod bdcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bdcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BdrstR {
+            bits: u8,
+        }
+        impl BdrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtcenR {
+            bits: u8,
+        }
+        impl RtcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rtcsel1R {
+            bits: u8,
+        }
+        impl Rtcsel1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rtcsel0R {
+            bits: u8,
+        }
+        impl Rtcsel0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsebypR {
+            bits: u8,
+        }
+        impl LsebypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LserdyR {
+            bits: u8,
+        }
+        impl LserdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LseonR {
+            bits: u8,
+        }
+        impl LseonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BdrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BdrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rtcsel1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rtcsel1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rtcsel0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rtcsel0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsebypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsebypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LseonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LseonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Backup domain software reset" ]
+            # [ inline ( always ) ]
+            pub fn bdrst(&self) -> BdrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BdrstR { bits }
+            }
+            # [ doc = "Bit 15 - RTC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn rtcen(&self) -> RtcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtcenR { bits }
+            }
+            # [ doc = "Bit 9 - RTC clock source selection" ]
+            # [ inline ( always ) ]
+            pub fn rtcsel1(&self) -> Rtcsel1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rtcsel1R { bits }
+            }
+            # [ doc = "Bit 8 - RTC clock source selection" ]
+            # [ inline ( always ) ]
+            pub fn rtcsel0(&self) -> Rtcsel0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rtcsel0R { bits }
+            }
+            # [ doc = "Bit 2 - External low-speed oscillator bypass" ]
+            # [ inline ( always ) ]
+            pub fn lsebyp(&self) -> LsebypR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsebypR { bits }
+            }
+            # [ doc = "Bit 1 - External low-speed oscillator ready" ]
+            # [ inline ( always ) ]
+            pub fn lserdy(&self) -> LserdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LserdyR { bits }
+            }
+            # [ doc = "Bit 0 - External low-speed oscillator enable" ]
+            # [ inline ( always ) ]
+            pub fn lseon(&self) -> LseonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LseonR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Backup domain software reset" ]
+            # [ inline ( always ) ]
+            pub fn bdrst(&mut self) -> _BdrstW {
+                _BdrstW { w: self }
+            }
+            # [ doc = "Bit 15 - RTC clock enable" ]
+            # [ inline ( always ) ]
+            pub fn rtcen(&mut self) -> _RtcenW {
+                _RtcenW { w: self }
+            }
+            # [ doc = "Bit 9 - RTC clock source selection" ]
+            # [ inline ( always ) ]
+            pub fn rtcsel1(&mut self) -> _Rtcsel1W {
+                _Rtcsel1W { w: self }
+            }
+            # [ doc = "Bit 8 - RTC clock source selection" ]
+            # [ inline ( always ) ]
+            pub fn rtcsel0(&mut self) -> _Rtcsel0W {
+                _Rtcsel0W { w: self }
+            }
+            # [ doc = "Bit 2 - External low-speed oscillator bypass" ]
+            # [ inline ( always ) ]
+            pub fn lsebyp(&mut self) -> _LsebypW {
+                _LsebypW { w: self }
+            }
+            # [ doc = "Bit 0 - External low-speed oscillator enable" ]
+            # [ inline ( always ) ]
+            pub fn lseon(&mut self) -> _LseonW {
+                _LseonW { w: self }
+            }
+        }
+    }
+    # [ doc = "clock control & status register" ]
+    pub struct Csr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "clock control & status register" ]
+    pub mod csr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Csr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LpwrrstfR {
+            bits: u8,
+        }
+        impl LpwrrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WwdgrstfR {
+            bits: u8,
+        }
+        impl WwdgrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdgrstfR {
+            bits: u8,
+        }
+        impl WdgrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SftrstfR {
+            bits: u8,
+        }
+        impl SftrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PorrstfR {
+            bits: u8,
+        }
+        impl PorrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PadrstfR {
+            bits: u8,
+        }
+        impl PadrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BorrstfR {
+            bits: u8,
+        }
+        impl BorrstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RmvfR {
+            bits: u8,
+        }
+        impl RmvfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsirdyR {
+            bits: u8,
+        }
+        impl LsirdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsionR {
+            bits: u8,
+        }
+        impl LsionR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LpwrrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LpwrrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WwdgrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WwdgrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdgrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdgrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SftrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SftrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PorrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PorrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PadrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PadrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BorrstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BorrstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RmvfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RmvfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsionW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsionW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - Low-power reset flag" ]
+            # [ inline ( always ) ]
+            pub fn lpwrrstf(&self) -> LpwrrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LpwrrstfR { bits }
+            }
+            # [ doc = "Bit 30 - Window watchdog reset flag" ]
+            # [ inline ( always ) ]
+            pub fn wwdgrstf(&self) -> WwdgrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WwdgrstfR { bits }
+            }
+            # [ doc = "Bit 29 - Independent watchdog reset flag" ]
+            # [ inline ( always ) ]
+            pub fn wdgrstf(&self) -> WdgrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdgrstfR { bits }
+            }
+            # [ doc = "Bit 28 - Software reset flag" ]
+            # [ inline ( always ) ]
+            pub fn sftrstf(&self) -> SftrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SftrstfR { bits }
+            }
+            # [ doc = "Bit 27 - POR/PDR reset flag" ]
+            # [ inline ( always ) ]
+            pub fn porrstf(&self) -> PorrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PorrstfR { bits }
+            }
+            # [ doc = "Bit 26 - PIN reset flag" ]
+            # [ inline ( always ) ]
+            pub fn padrstf(&self) -> PadrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PadrstfR { bits }
+            }
+            # [ doc = "Bit 25 - BOR reset flag" ]
+            # [ inline ( always ) ]
+            pub fn borrstf(&self) -> BorrstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BorrstfR { bits }
+            }
+            # [ doc = "Bit 24 - Remove reset flag" ]
+            # [ inline ( always ) ]
+            pub fn rmvf(&self) -> RmvfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RmvfR { bits }
+            }
+            # [ doc = "Bit 1 - Internal low-speed oscillator ready" ]
+            # [ inline ( always ) ]
+            pub fn lsirdy(&self) -> LsirdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsirdyR { bits }
+            }
+            # [ doc = "Bit 0 - Internal low-speed oscillator enable" ]
+            # [ inline ( always ) ]
+            pub fn lsion(&self) -> LsionR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsionR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 234881024 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Low-power reset flag" ]
+            # [ inline ( always ) ]
+            pub fn lpwrrstf(&mut self) -> _LpwrrstfW {
+                _LpwrrstfW { w: self }
+            }
+            # [ doc = "Bit 30 - Window watchdog reset flag" ]
+            # [ inline ( always ) ]
+            pub fn wwdgrstf(&mut self) -> _WwdgrstfW {
+                _WwdgrstfW { w: self }
+            }
+            # [ doc = "Bit 29 - Independent watchdog reset flag" ]
+            # [ inline ( always ) ]
+            pub fn wdgrstf(&mut self) -> _WdgrstfW {
+                _WdgrstfW { w: self }
+            }
+            # [ doc = "Bit 28 - Software reset flag" ]
+            # [ inline ( always ) ]
+            pub fn sftrstf(&mut self) -> _SftrstfW {
+                _SftrstfW { w: self }
+            }
+            # [ doc = "Bit 27 - POR/PDR reset flag" ]
+            # [ inline ( always ) ]
+            pub fn porrstf(&mut self) -> _PorrstfW {
+                _PorrstfW { w: self }
+            }
+            # [ doc = "Bit 26 - PIN reset flag" ]
+            # [ inline ( always ) ]
+            pub fn padrstf(&mut self) -> _PadrstfW {
+                _PadrstfW { w: self }
+            }
+            # [ doc = "Bit 25 - BOR reset flag" ]
+            # [ inline ( always ) ]
+            pub fn borrstf(&mut self) -> _BorrstfW {
+                _BorrstfW { w: self }
+            }
+            # [ doc = "Bit 24 - Remove reset flag" ]
+            # [ inline ( always ) ]
+            pub fn rmvf(&mut self) -> _RmvfW {
+                _RmvfW { w: self }
+            }
+            # [ doc = "Bit 0 - Internal low-speed oscillator enable" ]
+            # [ inline ( always ) ]
+            pub fn lsion(&mut self) -> _LsionW {
+                _LsionW { w: self }
+            }
+        }
+    }
+    # [ doc = "spread spectrum clock generation register" ]
+    pub struct Sscgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "spread spectrum clock generation register" ]
+    pub mod sscgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sscgr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SscgenR {
+            bits: u8,
+        }
+        impl SscgenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SpreadselR {
+            bits: u8,
+        }
+        impl SpreadselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IncstepR {
+            bits: u16,
+        }
+        impl IncstepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ModperR {
+            bits: u16,
+        }
+        impl ModperR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SscgenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SscgenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SpreadselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SpreadselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IncstepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IncstepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 32767;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ModperW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ModperW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 8191;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - Spread spectrum modulation enable" ]
+            # [ inline ( always ) ]
+            pub fn sscgen(&self) -> SscgenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SscgenR { bits }
+            }
+            # [ doc = "Bit 30 - Spread Select" ]
+            # [ inline ( always ) ]
+            pub fn spreadsel(&self) -> SpreadselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SpreadselR { bits }
+            }
+            # [ doc = "Bits 13:27 - Incrementation step" ]
+            # [ inline ( always ) ]
+            pub fn incstep(&self) -> IncstepR {
+                let bits = {
+                    const MASK: u16 = 32767;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IncstepR { bits }
+            }
+            # [ doc = "Bits 0:12 - Modulation period" ]
+            # [ inline ( always ) ]
+            pub fn modper(&self) -> ModperR {
+                let bits = {
+                    const MASK: u16 = 8191;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ModperR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Spread spectrum modulation enable" ]
+            # [ inline ( always ) ]
+            pub fn sscgen(&mut self) -> _SscgenW {
+                _SscgenW { w: self }
+            }
+            # [ doc = "Bit 30 - Spread Select" ]
+            # [ inline ( always ) ]
+            pub fn spreadsel(&mut self) -> _SpreadselW {
+                _SpreadselW { w: self }
+            }
+            # [ doc = "Bits 13:27 - Incrementation step" ]
+            # [ inline ( always ) ]
+            pub fn incstep(&mut self) -> _IncstepW {
+                _IncstepW { w: self }
+            }
+            # [ doc = "Bits 0:12 - Modulation period" ]
+            # [ inline ( always ) ]
+            pub fn modper(&mut self) -> _ModperW {
+                _ModperW { w: self }
+            }
+        }
+    }
+    # [ doc = "PLLI2S configuration register" ]
+    pub struct Plli2scfgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "PLLI2S configuration register" ]
+    pub mod plli2scfgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Plli2scfgr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2srxR {
+            bits: u8,
+        }
+        impl Plli2srxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Plli2snxR {
+            bits: u16,
+        }
+        impl Plli2snxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plli2srxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plli2srxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Plli2snxW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Plli2snxW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:30 - PLLI2S division factor for I2S clocks" ]
+            # [ inline ( always ) ]
+            pub fn plli2srx(&self) -> Plli2srxR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Plli2srxR { bits }
+            }
+            # [ doc = "Bits 6:14 - PLLI2S multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plli2snx(&self) -> Plli2snxR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Plli2snxR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 536883200 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:30 - PLLI2S division factor for I2S clocks" ]
+            # [ inline ( always ) ]
+            pub fn plli2srx(&mut self) -> _Plli2srxW {
+                _Plli2srxW { w: self }
+            }
+            # [ doc = "Bits 6:14 - PLLI2S multiplication factor for VCO" ]
+            # [ inline ( always ) ]
+            pub fn plli2snx(&mut self) -> _Plli2snxW {
+                _Plli2snxW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Reset and clock control" ]
+pub struct Rcc {
+    register_block: rcc::RegisterBlock,
+}
+impl Deref for Rcc {
+    type Target = rcc::RegisterBlock;
+    fn deref(&self) -> &rcc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub const GPIOI: Peripheral<Gpioi> = unsafe { Peripheral::new(1073881088) };
+# [ doc = "General-purpose I/Os" ]
+pub mod gpioi {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - GPIO port mode register" ]
+        pub moder: Moder,
+        # [ doc = "0x04 - GPIO port output type register" ]
+        pub otyper: Otyper,
+        # [ doc = "0x08 - GPIO port output speed register" ]
+        pub ospeedr: Ospeedr,
+        # [ doc = "0x0c - GPIO port pull-up/pull-down register" ]
+        pub pupdr: Pupdr,
+        # [ doc = "0x10 - GPIO port input data register" ]
+        pub idr: Idr,
+        # [ doc = "0x14 - GPIO port output data register" ]
+        pub odr: Odr,
+        # [ doc = "0x18 - GPIO port bit set/reset register" ]
+        pub bsrr: Bsrr,
+        # [ doc = "0x1c - GPIO port configuration lock register" ]
+        pub lckr: Lckr,
+        # [ doc = "0x20 - GPIO alternate function low register" ]
+        pub afrl: Afrl,
+        # [ doc = "0x24 - GPIO alternate function high register" ]
+        pub afrh: Afrh,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub struct Moder {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub mod moder {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Moder {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder15R {
+            bits: u8,
+        }
+        impl Moder15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder14R {
+            bits: u8,
+        }
+        impl Moder14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder13R {
+            bits: u8,
+        }
+        impl Moder13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder12R {
+            bits: u8,
+        }
+        impl Moder12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder11R {
+            bits: u8,
+        }
+        impl Moder11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder10R {
+            bits: u8,
+        }
+        impl Moder10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder9R {
+            bits: u8,
+        }
+        impl Moder9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder8R {
+            bits: u8,
+        }
+        impl Moder8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder7R {
+            bits: u8,
+        }
+        impl Moder7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder6R {
+            bits: u8,
+        }
+        impl Moder6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder5R {
+            bits: u8,
+        }
+        impl Moder5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder4R {
+            bits: u8,
+        }
+        impl Moder4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder3R {
+            bits: u8,
+        }
+        impl Moder3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder2R {
+            bits: u8,
+        }
+        impl Moder2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder1R {
+            bits: u8,
+        }
+        impl Moder1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder0R {
+            bits: u8,
+        }
+        impl Moder0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&self) -> Moder15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&self) -> Moder14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&self) -> Moder13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&self) -> Moder12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&self) -> Moder11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&self) -> Moder10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&self) -> Moder9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&self) -> Moder8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&self) -> Moder7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&self) -> Moder6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&self) -> Moder5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&self) -> Moder4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&self) -> Moder3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&self) -> Moder2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&self) -> Moder1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&self) -> Moder0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&mut self) -> _Moder15W {
+                _Moder15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&mut self) -> _Moder14W {
+                _Moder14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&mut self) -> _Moder13W {
+                _Moder13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&mut self) -> _Moder12W {
+                _Moder12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&mut self) -> _Moder11W {
+                _Moder11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&mut self) -> _Moder10W {
+                _Moder10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&mut self) -> _Moder9W {
+                _Moder9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&mut self) -> _Moder8W {
+                _Moder8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&mut self) -> _Moder7W {
+                _Moder7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&mut self) -> _Moder6W {
+                _Moder6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&mut self) -> _Moder5W {
+                _Moder5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&mut self) -> _Moder4W {
+                _Moder4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&mut self) -> _Moder3W {
+                _Moder3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&mut self) -> _Moder2W {
+                _Moder2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&mut self) -> _Moder1W {
+                _Moder1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&mut self) -> _Moder0W {
+                _Moder0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub struct Otyper {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub mod otyper {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Otyper {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot15R {
+            bits: u8,
+        }
+        impl Ot15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot14R {
+            bits: u8,
+        }
+        impl Ot14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot13R {
+            bits: u8,
+        }
+        impl Ot13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot12R {
+            bits: u8,
+        }
+        impl Ot12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot11R {
+            bits: u8,
+        }
+        impl Ot11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot10R {
+            bits: u8,
+        }
+        impl Ot10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot9R {
+            bits: u8,
+        }
+        impl Ot9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot8R {
+            bits: u8,
+        }
+        impl Ot8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot7R {
+            bits: u8,
+        }
+        impl Ot7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot6R {
+            bits: u8,
+        }
+        impl Ot6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot5R {
+            bits: u8,
+        }
+        impl Ot5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot4R {
+            bits: u8,
+        }
+        impl Ot4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot3R {
+            bits: u8,
+        }
+        impl Ot3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot2R {
+            bits: u8,
+        }
+        impl Ot2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot1R {
+            bits: u8,
+        }
+        impl Ot1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot0R {
+            bits: u8,
+        }
+        impl Ot0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&self) -> Ot15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot15R { bits }
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&self) -> Ot14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot14R { bits }
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&self) -> Ot13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot13R { bits }
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&self) -> Ot12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot12R { bits }
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&self) -> Ot11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot11R { bits }
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&self) -> Ot10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot10R { bits }
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&self) -> Ot9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot9R { bits }
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&self) -> Ot8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot8R { bits }
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&self) -> Ot7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot7R { bits }
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&self) -> Ot6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot6R { bits }
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&self) -> Ot5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot5R { bits }
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&self) -> Ot4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot4R { bits }
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&self) -> Ot3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot3R { bits }
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&self) -> Ot2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot2R { bits }
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&self) -> Ot1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot1R { bits }
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&self) -> Ot0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&mut self) -> _Ot15W {
+                _Ot15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&mut self) -> _Ot14W {
+                _Ot14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&mut self) -> _Ot13W {
+                _Ot13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&mut self) -> _Ot12W {
+                _Ot12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&mut self) -> _Ot11W {
+                _Ot11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&mut self) -> _Ot10W {
+                _Ot10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&mut self) -> _Ot9W {
+                _Ot9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&mut self) -> _Ot8W {
+                _Ot8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&mut self) -> _Ot7W {
+                _Ot7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&mut self) -> _Ot6W {
+                _Ot6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&mut self) -> _Ot5W {
+                _Ot5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&mut self) -> _Ot4W {
+                _Ot4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&mut self) -> _Ot3W {
+                _Ot3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&mut self) -> _Ot2W {
+                _Ot2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&mut self) -> _Ot1W {
+                _Ot1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&mut self) -> _Ot0W {
+                _Ot0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub struct Ospeedr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub mod ospeedr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ospeedr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr15R {
+            bits: u8,
+        }
+        impl Ospeedr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr14R {
+            bits: u8,
+        }
+        impl Ospeedr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr13R {
+            bits: u8,
+        }
+        impl Ospeedr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr12R {
+            bits: u8,
+        }
+        impl Ospeedr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr11R {
+            bits: u8,
+        }
+        impl Ospeedr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr10R {
+            bits: u8,
+        }
+        impl Ospeedr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr9R {
+            bits: u8,
+        }
+        impl Ospeedr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr8R {
+            bits: u8,
+        }
+        impl Ospeedr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr7R {
+            bits: u8,
+        }
+        impl Ospeedr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr6R {
+            bits: u8,
+        }
+        impl Ospeedr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr5R {
+            bits: u8,
+        }
+        impl Ospeedr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr4R {
+            bits: u8,
+        }
+        impl Ospeedr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr3R {
+            bits: u8,
+        }
+        impl Ospeedr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr2R {
+            bits: u8,
+        }
+        impl Ospeedr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr1R {
+            bits: u8,
+        }
+        impl Ospeedr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr0R {
+            bits: u8,
+        }
+        impl Ospeedr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&self) -> Ospeedr15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&self) -> Ospeedr14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&self) -> Ospeedr13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&self) -> Ospeedr12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&self) -> Ospeedr11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&self) -> Ospeedr10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&self) -> Ospeedr9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&self) -> Ospeedr8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&self) -> Ospeedr7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&self) -> Ospeedr6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&self) -> Ospeedr5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&self) -> Ospeedr4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&self) -> Ospeedr3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&self) -> Ospeedr2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&self) -> Ospeedr1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&self) -> Ospeedr0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&mut self) -> _Ospeedr15W {
+                _Ospeedr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&mut self) -> _Ospeedr14W {
+                _Ospeedr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&mut self) -> _Ospeedr13W {
+                _Ospeedr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&mut self) -> _Ospeedr12W {
+                _Ospeedr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&mut self) -> _Ospeedr11W {
+                _Ospeedr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&mut self) -> _Ospeedr10W {
+                _Ospeedr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&mut self) -> _Ospeedr9W {
+                _Ospeedr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&mut self) -> _Ospeedr8W {
+                _Ospeedr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&mut self) -> _Ospeedr7W {
+                _Ospeedr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&mut self) -> _Ospeedr6W {
+                _Ospeedr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&mut self) -> _Ospeedr5W {
+                _Ospeedr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&mut self) -> _Ospeedr4W {
+                _Ospeedr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&mut self) -> _Ospeedr3W {
+                _Ospeedr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&mut self) -> _Ospeedr2W {
+                _Ospeedr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&mut self) -> _Ospeedr1W {
+                _Ospeedr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&mut self) -> _Ospeedr0W {
+                _Ospeedr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub struct Pupdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub mod pupdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pupdr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr15R {
+            bits: u8,
+        }
+        impl Pupdr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr14R {
+            bits: u8,
+        }
+        impl Pupdr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr13R {
+            bits: u8,
+        }
+        impl Pupdr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr12R {
+            bits: u8,
+        }
+        impl Pupdr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr11R {
+            bits: u8,
+        }
+        impl Pupdr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr10R {
+            bits: u8,
+        }
+        impl Pupdr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr9R {
+            bits: u8,
+        }
+        impl Pupdr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr8R {
+            bits: u8,
+        }
+        impl Pupdr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr7R {
+            bits: u8,
+        }
+        impl Pupdr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr6R {
+            bits: u8,
+        }
+        impl Pupdr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr5R {
+            bits: u8,
+        }
+        impl Pupdr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr4R {
+            bits: u8,
+        }
+        impl Pupdr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr3R {
+            bits: u8,
+        }
+        impl Pupdr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr2R {
+            bits: u8,
+        }
+        impl Pupdr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr1R {
+            bits: u8,
+        }
+        impl Pupdr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr0R {
+            bits: u8,
+        }
+        impl Pupdr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&self) -> Pupdr15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&self) -> Pupdr14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&self) -> Pupdr13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&self) -> Pupdr12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&self) -> Pupdr11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&self) -> Pupdr10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&self) -> Pupdr9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&self) -> Pupdr8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&self) -> Pupdr7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&self) -> Pupdr6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&self) -> Pupdr5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&self) -> Pupdr4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&self) -> Pupdr3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&self) -> Pupdr2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&self) -> Pupdr1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&self) -> Pupdr0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&mut self) -> _Pupdr15W {
+                _Pupdr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&mut self) -> _Pupdr14W {
+                _Pupdr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&mut self) -> _Pupdr13W {
+                _Pupdr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&mut self) -> _Pupdr12W {
+                _Pupdr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&mut self) -> _Pupdr11W {
+                _Pupdr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&mut self) -> _Pupdr10W {
+                _Pupdr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&mut self) -> _Pupdr9W {
+                _Pupdr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&mut self) -> _Pupdr8W {
+                _Pupdr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&mut self) -> _Pupdr7W {
+                _Pupdr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&mut self) -> _Pupdr6W {
+                _Pupdr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&mut self) -> _Pupdr5W {
+                _Pupdr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&mut self) -> _Pupdr4W {
+                _Pupdr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&mut self) -> _Pupdr3W {
+                _Pupdr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&mut self) -> _Pupdr2W {
+                _Pupdr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&mut self) -> _Pupdr1W {
+                _Pupdr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&mut self) -> _Pupdr0W {
+                _Pupdr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub struct Idr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub mod idr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Idr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr15R {
+            bits: u8,
+        }
+        impl Idr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr14R {
+            bits: u8,
+        }
+        impl Idr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr13R {
+            bits: u8,
+        }
+        impl Idr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr12R {
+            bits: u8,
+        }
+        impl Idr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr11R {
+            bits: u8,
+        }
+        impl Idr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr10R {
+            bits: u8,
+        }
+        impl Idr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr9R {
+            bits: u8,
+        }
+        impl Idr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr8R {
+            bits: u8,
+        }
+        impl Idr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr7R {
+            bits: u8,
+        }
+        impl Idr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr6R {
+            bits: u8,
+        }
+        impl Idr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr5R {
+            bits: u8,
+        }
+        impl Idr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr4R {
+            bits: u8,
+        }
+        impl Idr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr3R {
+            bits: u8,
+        }
+        impl Idr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr2R {
+            bits: u8,
+        }
+        impl Idr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr1R {
+            bits: u8,
+        }
+        impl Idr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr0R {
+            bits: u8,
+        }
+        impl Idr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr15(&self) -> Idr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr14(&self) -> Idr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr13(&self) -> Idr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr12(&self) -> Idr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr11(&self) -> Idr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr10(&self) -> Idr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr9(&self) -> Idr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr8(&self) -> Idr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr7(&self) -> Idr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr6(&self) -> Idr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr5(&self) -> Idr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr4(&self) -> Idr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr3(&self) -> Idr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr2(&self) -> Idr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr1(&self) -> Idr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr0(&self) -> Idr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr0R { bits }
+            }
+        }
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub struct Odr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub mod odr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Odr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr15R {
+            bits: u8,
+        }
+        impl Odr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr14R {
+            bits: u8,
+        }
+        impl Odr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr13R {
+            bits: u8,
+        }
+        impl Odr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr12R {
+            bits: u8,
+        }
+        impl Odr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr11R {
+            bits: u8,
+        }
+        impl Odr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr10R {
+            bits: u8,
+        }
+        impl Odr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr9R {
+            bits: u8,
+        }
+        impl Odr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr8R {
+            bits: u8,
+        }
+        impl Odr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr7R {
+            bits: u8,
+        }
+        impl Odr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr6R {
+            bits: u8,
+        }
+        impl Odr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr5R {
+            bits: u8,
+        }
+        impl Odr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr4R {
+            bits: u8,
+        }
+        impl Odr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr3R {
+            bits: u8,
+        }
+        impl Odr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr2R {
+            bits: u8,
+        }
+        impl Odr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr1R {
+            bits: u8,
+        }
+        impl Odr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr0R {
+            bits: u8,
+        }
+        impl Odr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&self) -> Odr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&self) -> Odr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&self) -> Odr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&self) -> Odr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&self) -> Odr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&self) -> Odr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&self) -> Odr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&self) -> Odr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&self) -> Odr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&self) -> Odr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&self) -> Odr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&self) -> Odr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&self) -> Odr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&self) -> Odr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&self) -> Odr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&self) -> Odr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&mut self) -> _Odr15W {
+                _Odr15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&mut self) -> _Odr14W {
+                _Odr14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&mut self) -> _Odr13W {
+                _Odr13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&mut self) -> _Odr12W {
+                _Odr12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&mut self) -> _Odr11W {
+                _Odr11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&mut self) -> _Odr10W {
+                _Odr10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&mut self) -> _Odr9W {
+                _Odr9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&mut self) -> _Odr8W {
+                _Odr8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&mut self) -> _Odr7W {
+                _Odr7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&mut self) -> _Odr6W {
+                _Odr6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&mut self) -> _Odr5W {
+                _Odr5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&mut self) -> _Odr4W {
+                _Odr4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&mut self) -> _Odr3W {
+                _Odr3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&mut self) -> _Odr2W {
+                _Odr2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&mut self) -> _Odr1W {
+                _Odr1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&mut self) -> _Odr0W {
+                _Odr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub struct Bsrr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub mod bsrr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bsrr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br15(&mut self) -> _Br15W {
+                _Br15W { w: self }
+            }
+            # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br14(&mut self) -> _Br14W {
+                _Br14W { w: self }
+            }
+            # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br13(&mut self) -> _Br13W {
+                _Br13W { w: self }
+            }
+            # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br12(&mut self) -> _Br12W {
+                _Br12W { w: self }
+            }
+            # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br11(&mut self) -> _Br11W {
+                _Br11W { w: self }
+            }
+            # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br10(&mut self) -> _Br10W {
+                _Br10W { w: self }
+            }
+            # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br9(&mut self) -> _Br9W {
+                _Br9W { w: self }
+            }
+            # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br8(&mut self) -> _Br8W {
+                _Br8W { w: self }
+            }
+            # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br7(&mut self) -> _Br7W {
+                _Br7W { w: self }
+            }
+            # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br6(&mut self) -> _Br6W {
+                _Br6W { w: self }
+            }
+            # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br5(&mut self) -> _Br5W {
+                _Br5W { w: self }
+            }
+            # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br4(&mut self) -> _Br4W {
+                _Br4W { w: self }
+            }
+            # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br3(&mut self) -> _Br3W {
+                _Br3W { w: self }
+            }
+            # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br2(&mut self) -> _Br2W {
+                _Br2W { w: self }
+            }
+            # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br1(&mut self) -> _Br1W {
+                _Br1W { w: self }
+            }
+            # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br0(&mut self) -> _Br0W {
+                _Br0W { w: self }
+            }
+            # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs15(&mut self) -> _Bs15W {
+                _Bs15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs14(&mut self) -> _Bs14W {
+                _Bs14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs13(&mut self) -> _Bs13W {
+                _Bs13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs12(&mut self) -> _Bs12W {
+                _Bs12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs11(&mut self) -> _Bs11W {
+                _Bs11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs10(&mut self) -> _Bs10W {
+                _Bs10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs9(&mut self) -> _Bs9W {
+                _Bs9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs8(&mut self) -> _Bs8W {
+                _Bs8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs7(&mut self) -> _Bs7W {
+                _Bs7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs6(&mut self) -> _Bs6W {
+                _Bs6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs5(&mut self) -> _Bs5W {
+                _Bs5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs4(&mut self) -> _Bs4W {
+                _Bs4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs3(&mut self) -> _Bs3W {
+                _Bs3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs2(&mut self) -> _Bs2W {
+                _Bs2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs1(&mut self) -> _Bs1W {
+                _Bs1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs0(&mut self) -> _Bs0W {
+                _Bs0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub struct Lckr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub mod lckr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Lckr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LckkR {
+            bits: u8,
+        }
+        impl LckkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck15R {
+            bits: u8,
+        }
+        impl Lck15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck14R {
+            bits: u8,
+        }
+        impl Lck14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck13R {
+            bits: u8,
+        }
+        impl Lck13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck12R {
+            bits: u8,
+        }
+        impl Lck12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck11R {
+            bits: u8,
+        }
+        impl Lck11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck10R {
+            bits: u8,
+        }
+        impl Lck10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck9R {
+            bits: u8,
+        }
+        impl Lck9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck8R {
+            bits: u8,
+        }
+        impl Lck8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck7R {
+            bits: u8,
+        }
+        impl Lck7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck6R {
+            bits: u8,
+        }
+        impl Lck6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck5R {
+            bits: u8,
+        }
+        impl Lck5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck4R {
+            bits: u8,
+        }
+        impl Lck4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck3R {
+            bits: u8,
+        }
+        impl Lck3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck2R {
+            bits: u8,
+        }
+        impl Lck2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck1R {
+            bits: u8,
+        }
+        impl Lck1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck0R {
+            bits: u8,
+        }
+        impl Lck0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LckkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LckkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&self) -> LckkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LckkR { bits }
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&self) -> Lck15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck15R { bits }
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&self) -> Lck14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck14R { bits }
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&self) -> Lck13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck13R { bits }
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&self) -> Lck12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck12R { bits }
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&self) -> Lck11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck11R { bits }
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&self) -> Lck10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck10R { bits }
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&self) -> Lck9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck9R { bits }
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&self) -> Lck8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck8R { bits }
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&self) -> Lck7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck7R { bits }
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&self) -> Lck6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck6R { bits }
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&self) -> Lck5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck5R { bits }
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&self) -> Lck4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck4R { bits }
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&self) -> Lck3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck3R { bits }
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&self) -> Lck2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck2R { bits }
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&self) -> Lck1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck1R { bits }
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&self) -> Lck0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&mut self) -> _LckkW {
+                _LckkW { w: self }
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&mut self) -> _Lck15W {
+                _Lck15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&mut self) -> _Lck14W {
+                _Lck14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&mut self) -> _Lck13W {
+                _Lck13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&mut self) -> _Lck12W {
+                _Lck12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&mut self) -> _Lck11W {
+                _Lck11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&mut self) -> _Lck10W {
+                _Lck10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&mut self) -> _Lck9W {
+                _Lck9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&mut self) -> _Lck8W {
+                _Lck8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&mut self) -> _Lck7W {
+                _Lck7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&mut self) -> _Lck6W {
+                _Lck6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&mut self) -> _Lck5W {
+                _Lck5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&mut self) -> _Lck4W {
+                _Lck4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&mut self) -> _Lck3W {
+                _Lck3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&mut self) -> _Lck2W {
+                _Lck2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&mut self) -> _Lck1W {
+                _Lck1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&mut self) -> _Lck0W {
+                _Lck0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub struct Afrl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub mod afrl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl7R {
+            bits: u8,
+        }
+        impl Afrl7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl6R {
+            bits: u8,
+        }
+        impl Afrl6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl5R {
+            bits: u8,
+        }
+        impl Afrl5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl4R {
+            bits: u8,
+        }
+        impl Afrl4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl3R {
+            bits: u8,
+        }
+        impl Afrl3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl2R {
+            bits: u8,
+        }
+        impl Afrl2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl1R {
+            bits: u8,
+        }
+        impl Afrl1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl0R {
+            bits: u8,
+        }
+        impl Afrl0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&self) -> Afrl7R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl7R { bits }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&self) -> Afrl6R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl6R { bits }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&self) -> Afrl5R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl5R { bits }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&self) -> Afrl4R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl4R { bits }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&self) -> Afrl3R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl3R { bits }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&self) -> Afrl2R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl2R { bits }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&self) -> Afrl1R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl1R { bits }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&self) -> Afrl0R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&mut self) -> _Afrl7W {
+                _Afrl7W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&mut self) -> _Afrl6W {
+                _Afrl6W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&mut self) -> _Afrl5W {
+                _Afrl5W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&mut self) -> _Afrl4W {
+                _Afrl4W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&mut self) -> _Afrl3W {
+                _Afrl3W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&mut self) -> _Afrl2W {
+                _Afrl2W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&mut self) -> _Afrl1W {
+                _Afrl1W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&mut self) -> _Afrl0W {
+                _Afrl0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub struct Afrh {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub mod afrh {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrh {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh15R {
+            bits: u8,
+        }
+        impl Afrh15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh14R {
+            bits: u8,
+        }
+        impl Afrh14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh13R {
+            bits: u8,
+        }
+        impl Afrh13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh12R {
+            bits: u8,
+        }
+        impl Afrh12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh11R {
+            bits: u8,
+        }
+        impl Afrh11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh10R {
+            bits: u8,
+        }
+        impl Afrh10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh9R {
+            bits: u8,
+        }
+        impl Afrh9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh8R {
+            bits: u8,
+        }
+        impl Afrh8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&self) -> Afrh15R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh15R { bits }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&self) -> Afrh14R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh14R { bits }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&self) -> Afrh13R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh13R { bits }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&self) -> Afrh12R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh12R { bits }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&self) -> Afrh11R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh11R { bits }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&self) -> Afrh10R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh10R { bits }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&self) -> Afrh9R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh9R { bits }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&self) -> Afrh8R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh8R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&mut self) -> _Afrh15W {
+                _Afrh15W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&mut self) -> _Afrh14W {
+                _Afrh14W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&mut self) -> _Afrh13W {
+                _Afrh13W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&mut self) -> _Afrh12W {
+                _Afrh12W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&mut self) -> _Afrh11W {
+                _Afrh11W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&mut self) -> _Afrh10W {
+                _Afrh10W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&mut self) -> _Afrh9W {
+                _Afrh9W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&mut self) -> _Afrh8W {
+                _Afrh8W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub struct Gpioi {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpioi {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOH" ]
+pub const GPIOH: Peripheral<Gpioh> = unsafe { Peripheral::new(1073880064) };
+# [ doc = r" Register block" ]
+pub struct Gpioh {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpioh {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOG" ]
+pub const GPIOG: Peripheral<Gpiog> = unsafe { Peripheral::new(1073879040) };
+# [ doc = r" Register block" ]
+pub struct Gpiog {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpiog {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOF" ]
+pub const GPIOF: Peripheral<Gpiof> = unsafe { Peripheral::new(1073878016) };
+# [ doc = r" Register block" ]
+pub struct Gpiof {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpiof {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOE" ]
+pub const GPIOE: Peripheral<Gpioe> = unsafe { Peripheral::new(1073876992) };
+# [ doc = r" Register block" ]
+pub struct Gpioe {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpioe {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOD" ]
+pub const GPIOD: Peripheral<Gpiod> = unsafe { Peripheral::new(1073875968) };
+# [ doc = r" Register block" ]
+pub struct Gpiod {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpiod {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "GPIOC" ]
+pub const GPIOC: Peripheral<Gpioc> = unsafe { Peripheral::new(1073874944) };
+# [ doc = r" Register block" ]
+pub struct Gpioc {
+    register_block: gpioi::RegisterBlock,
+}
+impl Deref for Gpioc {
+    type Target = gpioi::RegisterBlock;
+    fn deref(&self) -> &gpioi::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub const GPIOB: Peripheral<Gpiob> = unsafe { Peripheral::new(1073873920) };
+# [ doc = "General-purpose I/Os" ]
+pub mod gpiob {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - GPIO port mode register" ]
+        pub moder: Moder,
+        # [ doc = "0x04 - GPIO port output type register" ]
+        pub otyper: Otyper,
+        # [ doc = "0x08 - GPIO port output speed register" ]
+        pub ospeedr: Ospeedr,
+        # [ doc = "0x0c - GPIO port pull-up/pull-down register" ]
+        pub pupdr: Pupdr,
+        # [ doc = "0x10 - GPIO port input data register" ]
+        pub idr: Idr,
+        # [ doc = "0x14 - GPIO port output data register" ]
+        pub odr: Odr,
+        # [ doc = "0x18 - GPIO port bit set/reset register" ]
+        pub bsrr: Bsrr,
+        # [ doc = "0x1c - GPIO port configuration lock register" ]
+        pub lckr: Lckr,
+        # [ doc = "0x20 - GPIO alternate function low register" ]
+        pub afrl: Afrl,
+        # [ doc = "0x24 - GPIO alternate function high register" ]
+        pub afrh: Afrh,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub struct Moder {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub mod moder {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Moder {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder15R {
+            bits: u8,
+        }
+        impl Moder15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder14R {
+            bits: u8,
+        }
+        impl Moder14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder13R {
+            bits: u8,
+        }
+        impl Moder13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder12R {
+            bits: u8,
+        }
+        impl Moder12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder11R {
+            bits: u8,
+        }
+        impl Moder11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder10R {
+            bits: u8,
+        }
+        impl Moder10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder9R {
+            bits: u8,
+        }
+        impl Moder9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder8R {
+            bits: u8,
+        }
+        impl Moder8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder7R {
+            bits: u8,
+        }
+        impl Moder7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder6R {
+            bits: u8,
+        }
+        impl Moder6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder5R {
+            bits: u8,
+        }
+        impl Moder5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder4R {
+            bits: u8,
+        }
+        impl Moder4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder3R {
+            bits: u8,
+        }
+        impl Moder3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder2R {
+            bits: u8,
+        }
+        impl Moder2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder1R {
+            bits: u8,
+        }
+        impl Moder1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Moder0R {
+            bits: u8,
+        }
+        impl Moder0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&self) -> Moder15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&self) -> Moder14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&self) -> Moder13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&self) -> Moder12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&self) -> Moder11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&self) -> Moder10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&self) -> Moder9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&self) -> Moder8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&self) -> Moder7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&self) -> Moder6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&self) -> Moder5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&self) -> Moder4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&self) -> Moder3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&self) -> Moder2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&self) -> Moder1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&self) -> Moder0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Moder0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 640 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&mut self) -> _Moder15W {
+                _Moder15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&mut self) -> _Moder14W {
+                _Moder14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&mut self) -> _Moder13W {
+                _Moder13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&mut self) -> _Moder12W {
+                _Moder12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&mut self) -> _Moder11W {
+                _Moder11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&mut self) -> _Moder10W {
+                _Moder10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&mut self) -> _Moder9W {
+                _Moder9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&mut self) -> _Moder8W {
+                _Moder8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&mut self) -> _Moder7W {
+                _Moder7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&mut self) -> _Moder6W {
+                _Moder6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&mut self) -> _Moder5W {
+                _Moder5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&mut self) -> _Moder4W {
+                _Moder4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&mut self) -> _Moder3W {
+                _Moder3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&mut self) -> _Moder2W {
+                _Moder2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&mut self) -> _Moder1W {
+                _Moder1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&mut self) -> _Moder0W {
+                _Moder0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub struct Otyper {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub mod otyper {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Otyper {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot15R {
+            bits: u8,
+        }
+        impl Ot15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot14R {
+            bits: u8,
+        }
+        impl Ot14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot13R {
+            bits: u8,
+        }
+        impl Ot13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot12R {
+            bits: u8,
+        }
+        impl Ot12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot11R {
+            bits: u8,
+        }
+        impl Ot11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot10R {
+            bits: u8,
+        }
+        impl Ot10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot9R {
+            bits: u8,
+        }
+        impl Ot9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot8R {
+            bits: u8,
+        }
+        impl Ot8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot7R {
+            bits: u8,
+        }
+        impl Ot7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot6R {
+            bits: u8,
+        }
+        impl Ot6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot5R {
+            bits: u8,
+        }
+        impl Ot5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot4R {
+            bits: u8,
+        }
+        impl Ot4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot3R {
+            bits: u8,
+        }
+        impl Ot3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot2R {
+            bits: u8,
+        }
+        impl Ot2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot1R {
+            bits: u8,
+        }
+        impl Ot1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ot0R {
+            bits: u8,
+        }
+        impl Ot0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&self) -> Ot15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot15R { bits }
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&self) -> Ot14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot14R { bits }
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&self) -> Ot13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot13R { bits }
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&self) -> Ot12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot12R { bits }
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&self) -> Ot11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot11R { bits }
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&self) -> Ot10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot10R { bits }
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&self) -> Ot9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot9R { bits }
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&self) -> Ot8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot8R { bits }
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&self) -> Ot7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot7R { bits }
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&self) -> Ot6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot6R { bits }
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&self) -> Ot5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot5R { bits }
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&self) -> Ot4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot4R { bits }
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&self) -> Ot3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot3R { bits }
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&self) -> Ot2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot2R { bits }
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&self) -> Ot1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot1R { bits }
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&self) -> Ot0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ot0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&mut self) -> _Ot15W {
+                _Ot15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&mut self) -> _Ot14W {
+                _Ot14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&mut self) -> _Ot13W {
+                _Ot13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&mut self) -> _Ot12W {
+                _Ot12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&mut self) -> _Ot11W {
+                _Ot11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&mut self) -> _Ot10W {
+                _Ot10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&mut self) -> _Ot9W {
+                _Ot9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&mut self) -> _Ot8W {
+                _Ot8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&mut self) -> _Ot7W {
+                _Ot7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&mut self) -> _Ot6W {
+                _Ot6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&mut self) -> _Ot5W {
+                _Ot5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&mut self) -> _Ot4W {
+                _Ot4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&mut self) -> _Ot3W {
+                _Ot3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&mut self) -> _Ot2W {
+                _Ot2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&mut self) -> _Ot1W {
+                _Ot1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&mut self) -> _Ot0W {
+                _Ot0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub struct Ospeedr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub mod ospeedr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ospeedr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr15R {
+            bits: u8,
+        }
+        impl Ospeedr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr14R {
+            bits: u8,
+        }
+        impl Ospeedr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr13R {
+            bits: u8,
+        }
+        impl Ospeedr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr12R {
+            bits: u8,
+        }
+        impl Ospeedr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr11R {
+            bits: u8,
+        }
+        impl Ospeedr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr10R {
+            bits: u8,
+        }
+        impl Ospeedr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr9R {
+            bits: u8,
+        }
+        impl Ospeedr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr8R {
+            bits: u8,
+        }
+        impl Ospeedr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr7R {
+            bits: u8,
+        }
+        impl Ospeedr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr6R {
+            bits: u8,
+        }
+        impl Ospeedr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr5R {
+            bits: u8,
+        }
+        impl Ospeedr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr4R {
+            bits: u8,
+        }
+        impl Ospeedr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr3R {
+            bits: u8,
+        }
+        impl Ospeedr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr2R {
+            bits: u8,
+        }
+        impl Ospeedr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr1R {
+            bits: u8,
+        }
+        impl Ospeedr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ospeedr0R {
+            bits: u8,
+        }
+        impl Ospeedr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&self) -> Ospeedr15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&self) -> Ospeedr14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&self) -> Ospeedr13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&self) -> Ospeedr12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&self) -> Ospeedr11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&self) -> Ospeedr10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&self) -> Ospeedr9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&self) -> Ospeedr8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&self) -> Ospeedr7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&self) -> Ospeedr6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&self) -> Ospeedr5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&self) -> Ospeedr4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&self) -> Ospeedr3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&self) -> Ospeedr2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&self) -> Ospeedr1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&self) -> Ospeedr0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ospeedr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 192 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&mut self) -> _Ospeedr15W {
+                _Ospeedr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&mut self) -> _Ospeedr14W {
+                _Ospeedr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&mut self) -> _Ospeedr13W {
+                _Ospeedr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&mut self) -> _Ospeedr12W {
+                _Ospeedr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&mut self) -> _Ospeedr11W {
+                _Ospeedr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&mut self) -> _Ospeedr10W {
+                _Ospeedr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&mut self) -> _Ospeedr9W {
+                _Ospeedr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&mut self) -> _Ospeedr8W {
+                _Ospeedr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&mut self) -> _Ospeedr7W {
+                _Ospeedr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&mut self) -> _Ospeedr6W {
+                _Ospeedr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&mut self) -> _Ospeedr5W {
+                _Ospeedr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&mut self) -> _Ospeedr4W {
+                _Ospeedr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&mut self) -> _Ospeedr3W {
+                _Ospeedr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&mut self) -> _Ospeedr2W {
+                _Ospeedr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&mut self) -> _Ospeedr1W {
+                _Ospeedr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&mut self) -> _Ospeedr0W {
+                _Ospeedr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub struct Pupdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub mod pupdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pupdr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr15R {
+            bits: u8,
+        }
+        impl Pupdr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr14R {
+            bits: u8,
+        }
+        impl Pupdr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr13R {
+            bits: u8,
+        }
+        impl Pupdr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr12R {
+            bits: u8,
+        }
+        impl Pupdr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr11R {
+            bits: u8,
+        }
+        impl Pupdr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr10R {
+            bits: u8,
+        }
+        impl Pupdr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr9R {
+            bits: u8,
+        }
+        impl Pupdr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr8R {
+            bits: u8,
+        }
+        impl Pupdr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr7R {
+            bits: u8,
+        }
+        impl Pupdr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr6R {
+            bits: u8,
+        }
+        impl Pupdr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr5R {
+            bits: u8,
+        }
+        impl Pupdr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr4R {
+            bits: u8,
+        }
+        impl Pupdr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr3R {
+            bits: u8,
+        }
+        impl Pupdr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr2R {
+            bits: u8,
+        }
+        impl Pupdr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr1R {
+            bits: u8,
+        }
+        impl Pupdr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pupdr0R {
+            bits: u8,
+        }
+        impl Pupdr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&self) -> Pupdr15R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr15R { bits }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&self) -> Pupdr14R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr14R { bits }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&self) -> Pupdr13R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr13R { bits }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&self) -> Pupdr12R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr12R { bits }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&self) -> Pupdr11R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr11R { bits }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&self) -> Pupdr10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr10R { bits }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&self) -> Pupdr9R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr9R { bits }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&self) -> Pupdr8R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr8R { bits }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&self) -> Pupdr7R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr7R { bits }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&self) -> Pupdr6R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr6R { bits }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&self) -> Pupdr5R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr5R { bits }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&self) -> Pupdr4R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr4R { bits }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&self) -> Pupdr3R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr3R { bits }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&self) -> Pupdr2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr2R { bits }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&self) -> Pupdr1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr1R { bits }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&self) -> Pupdr0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pupdr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 256 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&mut self) -> _Pupdr15W {
+                _Pupdr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&mut self) -> _Pupdr14W {
+                _Pupdr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&mut self) -> _Pupdr13W {
+                _Pupdr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&mut self) -> _Pupdr12W {
+                _Pupdr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&mut self) -> _Pupdr11W {
+                _Pupdr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&mut self) -> _Pupdr10W {
+                _Pupdr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&mut self) -> _Pupdr9W {
+                _Pupdr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&mut self) -> _Pupdr8W {
+                _Pupdr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&mut self) -> _Pupdr7W {
+                _Pupdr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&mut self) -> _Pupdr6W {
+                _Pupdr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&mut self) -> _Pupdr5W {
+                _Pupdr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&mut self) -> _Pupdr4W {
+                _Pupdr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&mut self) -> _Pupdr3W {
+                _Pupdr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&mut self) -> _Pupdr2W {
+                _Pupdr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&mut self) -> _Pupdr1W {
+                _Pupdr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&mut self) -> _Pupdr0W {
+                _Pupdr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub struct Idr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub mod idr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Idr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr15R {
+            bits: u8,
+        }
+        impl Idr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr14R {
+            bits: u8,
+        }
+        impl Idr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr13R {
+            bits: u8,
+        }
+        impl Idr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr12R {
+            bits: u8,
+        }
+        impl Idr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr11R {
+            bits: u8,
+        }
+        impl Idr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr10R {
+            bits: u8,
+        }
+        impl Idr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr9R {
+            bits: u8,
+        }
+        impl Idr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr8R {
+            bits: u8,
+        }
+        impl Idr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr7R {
+            bits: u8,
+        }
+        impl Idr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr6R {
+            bits: u8,
+        }
+        impl Idr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr5R {
+            bits: u8,
+        }
+        impl Idr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr4R {
+            bits: u8,
+        }
+        impl Idr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr3R {
+            bits: u8,
+        }
+        impl Idr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr2R {
+            bits: u8,
+        }
+        impl Idr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr1R {
+            bits: u8,
+        }
+        impl Idr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr0R {
+            bits: u8,
+        }
+        impl Idr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr15(&self) -> Idr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr14(&self) -> Idr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr13(&self) -> Idr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr12(&self) -> Idr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr11(&self) -> Idr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr10(&self) -> Idr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr9(&self) -> Idr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr8(&self) -> Idr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr7(&self) -> Idr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr6(&self) -> Idr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr5(&self) -> Idr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr4(&self) -> Idr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr3(&self) -> Idr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr2(&self) -> Idr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr1(&self) -> Idr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr0(&self) -> Idr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr0R { bits }
+            }
+        }
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub struct Odr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub mod odr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Odr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr15R {
+            bits: u8,
+        }
+        impl Odr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr14R {
+            bits: u8,
+        }
+        impl Odr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr13R {
+            bits: u8,
+        }
+        impl Odr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr12R {
+            bits: u8,
+        }
+        impl Odr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr11R {
+            bits: u8,
+        }
+        impl Odr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr10R {
+            bits: u8,
+        }
+        impl Odr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr9R {
+            bits: u8,
+        }
+        impl Odr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr8R {
+            bits: u8,
+        }
+        impl Odr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr7R {
+            bits: u8,
+        }
+        impl Odr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr6R {
+            bits: u8,
+        }
+        impl Odr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr5R {
+            bits: u8,
+        }
+        impl Odr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr4R {
+            bits: u8,
+        }
+        impl Odr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr3R {
+            bits: u8,
+        }
+        impl Odr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr2R {
+            bits: u8,
+        }
+        impl Odr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr1R {
+            bits: u8,
+        }
+        impl Odr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr0R {
+            bits: u8,
+        }
+        impl Odr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&self) -> Odr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&self) -> Odr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&self) -> Odr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&self) -> Odr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&self) -> Odr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&self) -> Odr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&self) -> Odr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&self) -> Odr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&self) -> Odr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&self) -> Odr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&self) -> Odr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&self) -> Odr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&self) -> Odr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&self) -> Odr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&self) -> Odr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&self) -> Odr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&mut self) -> _Odr15W {
+                _Odr15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&mut self) -> _Odr14W {
+                _Odr14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&mut self) -> _Odr13W {
+                _Odr13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&mut self) -> _Odr12W {
+                _Odr12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&mut self) -> _Odr11W {
+                _Odr11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&mut self) -> _Odr10W {
+                _Odr10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&mut self) -> _Odr9W {
+                _Odr9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&mut self) -> _Odr8W {
+                _Odr8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&mut self) -> _Odr7W {
+                _Odr7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&mut self) -> _Odr6W {
+                _Odr6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&mut self) -> _Odr5W {
+                _Odr5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&mut self) -> _Odr4W {
+                _Odr4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&mut self) -> _Odr3W {
+                _Odr3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&mut self) -> _Odr2W {
+                _Odr2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&mut self) -> _Odr1W {
+                _Odr1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&mut self) -> _Odr0W {
+                _Odr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub struct Bsrr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub mod bsrr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bsrr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Bs0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br15(&mut self) -> _Br15W {
+                _Br15W { w: self }
+            }
+            # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br14(&mut self) -> _Br14W {
+                _Br14W { w: self }
+            }
+            # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br13(&mut self) -> _Br13W {
+                _Br13W { w: self }
+            }
+            # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br12(&mut self) -> _Br12W {
+                _Br12W { w: self }
+            }
+            # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br11(&mut self) -> _Br11W {
+                _Br11W { w: self }
+            }
+            # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br10(&mut self) -> _Br10W {
+                _Br10W { w: self }
+            }
+            # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br9(&mut self) -> _Br9W {
+                _Br9W { w: self }
+            }
+            # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br8(&mut self) -> _Br8W {
+                _Br8W { w: self }
+            }
+            # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br7(&mut self) -> _Br7W {
+                _Br7W { w: self }
+            }
+            # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br6(&mut self) -> _Br6W {
+                _Br6W { w: self }
+            }
+            # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br5(&mut self) -> _Br5W {
+                _Br5W { w: self }
+            }
+            # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br4(&mut self) -> _Br4W {
+                _Br4W { w: self }
+            }
+            # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br3(&mut self) -> _Br3W {
+                _Br3W { w: self }
+            }
+            # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br2(&mut self) -> _Br2W {
+                _Br2W { w: self }
+            }
+            # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br1(&mut self) -> _Br1W {
+                _Br1W { w: self }
+            }
+            # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br0(&mut self) -> _Br0W {
+                _Br0W { w: self }
+            }
+            # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs15(&mut self) -> _Bs15W {
+                _Bs15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs14(&mut self) -> _Bs14W {
+                _Bs14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs13(&mut self) -> _Bs13W {
+                _Bs13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs12(&mut self) -> _Bs12W {
+                _Bs12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs11(&mut self) -> _Bs11W {
+                _Bs11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs10(&mut self) -> _Bs10W {
+                _Bs10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs9(&mut self) -> _Bs9W {
+                _Bs9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs8(&mut self) -> _Bs8W {
+                _Bs8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs7(&mut self) -> _Bs7W {
+                _Bs7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs6(&mut self) -> _Bs6W {
+                _Bs6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs5(&mut self) -> _Bs5W {
+                _Bs5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs4(&mut self) -> _Bs4W {
+                _Bs4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs3(&mut self) -> _Bs3W {
+                _Bs3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs2(&mut self) -> _Bs2W {
+                _Bs2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs1(&mut self) -> _Bs1W {
+                _Bs1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs0(&mut self) -> _Bs0W {
+                _Bs0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub struct Lckr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub mod lckr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Lckr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LckkR {
+            bits: u8,
+        }
+        impl LckkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck15R {
+            bits: u8,
+        }
+        impl Lck15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck14R {
+            bits: u8,
+        }
+        impl Lck14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck13R {
+            bits: u8,
+        }
+        impl Lck13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck12R {
+            bits: u8,
+        }
+        impl Lck12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck11R {
+            bits: u8,
+        }
+        impl Lck11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck10R {
+            bits: u8,
+        }
+        impl Lck10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck9R {
+            bits: u8,
+        }
+        impl Lck9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck8R {
+            bits: u8,
+        }
+        impl Lck8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck7R {
+            bits: u8,
+        }
+        impl Lck7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck6R {
+            bits: u8,
+        }
+        impl Lck6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck5R {
+            bits: u8,
+        }
+        impl Lck5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck4R {
+            bits: u8,
+        }
+        impl Lck4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck3R {
+            bits: u8,
+        }
+        impl Lck3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck2R {
+            bits: u8,
+        }
+        impl Lck2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck1R {
+            bits: u8,
+        }
+        impl Lck1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Lck0R {
+            bits: u8,
+        }
+        impl Lck0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LckkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LckkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&self) -> LckkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LckkR { bits }
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&self) -> Lck15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck15R { bits }
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&self) -> Lck14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck14R { bits }
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&self) -> Lck13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck13R { bits }
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&self) -> Lck12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck12R { bits }
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&self) -> Lck11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck11R { bits }
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&self) -> Lck10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck10R { bits }
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&self) -> Lck9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck9R { bits }
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&self) -> Lck8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck8R { bits }
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&self) -> Lck7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck7R { bits }
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&self) -> Lck6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck6R { bits }
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&self) -> Lck5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck5R { bits }
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&self) -> Lck4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck4R { bits }
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&self) -> Lck3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck3R { bits }
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&self) -> Lck2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck2R { bits }
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&self) -> Lck1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck1R { bits }
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&self) -> Lck0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Lck0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&mut self) -> _LckkW {
+                _LckkW { w: self }
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&mut self) -> _Lck15W {
+                _Lck15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&mut self) -> _Lck14W {
+                _Lck14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&mut self) -> _Lck13W {
+                _Lck13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&mut self) -> _Lck12W {
+                _Lck12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&mut self) -> _Lck11W {
+                _Lck11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&mut self) -> _Lck10W {
+                _Lck10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&mut self) -> _Lck9W {
+                _Lck9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&mut self) -> _Lck8W {
+                _Lck8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&mut self) -> _Lck7W {
+                _Lck7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&mut self) -> _Lck6W {
+                _Lck6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&mut self) -> _Lck5W {
+                _Lck5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&mut self) -> _Lck4W {
+                _Lck4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&mut self) -> _Lck3W {
+                _Lck3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&mut self) -> _Lck2W {
+                _Lck2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&mut self) -> _Lck1W {
+                _Lck1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&mut self) -> _Lck0W {
+                _Lck0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub struct Afrl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub mod afrl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl7R {
+            bits: u8,
+        }
+        impl Afrl7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl6R {
+            bits: u8,
+        }
+        impl Afrl6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl5R {
+            bits: u8,
+        }
+        impl Afrl5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl4R {
+            bits: u8,
+        }
+        impl Afrl4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl3R {
+            bits: u8,
+        }
+        impl Afrl3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl2R {
+            bits: u8,
+        }
+        impl Afrl2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl1R {
+            bits: u8,
+        }
+        impl Afrl1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrl0R {
+            bits: u8,
+        }
+        impl Afrl0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&self) -> Afrl7R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl7R { bits }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&self) -> Afrl6R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl6R { bits }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&self) -> Afrl5R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl5R { bits }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&self) -> Afrl4R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl4R { bits }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&self) -> Afrl3R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl3R { bits }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&self) -> Afrl2R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl2R { bits }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&self) -> Afrl1R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl1R { bits }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&self) -> Afrl0R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrl0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&mut self) -> _Afrl7W {
+                _Afrl7W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&mut self) -> _Afrl6W {
+                _Afrl6W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&mut self) -> _Afrl5W {
+                _Afrl5W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&mut self) -> _Afrl4W {
+                _Afrl4W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&mut self) -> _Afrl3W {
+                _Afrl3W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&mut self) -> _Afrl2W {
+                _Afrl2W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&mut self) -> _Afrl1W {
+                _Afrl1W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&mut self) -> _Afrl0W {
+                _Afrl0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub struct Afrh {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub mod afrh {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrh {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh15R {
+            bits: u8,
+        }
+        impl Afrh15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh14R {
+            bits: u8,
+        }
+        impl Afrh14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh13R {
+            bits: u8,
+        }
+        impl Afrh13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh12R {
+            bits: u8,
+        }
+        impl Afrh12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh11R {
+            bits: u8,
+        }
+        impl Afrh11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh10R {
+            bits: u8,
+        }
+        impl Afrh10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh9R {
+            bits: u8,
+        }
+        impl Afrh9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Afrh8R {
+            bits: u8,
+        }
+        impl Afrh8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&self) -> Afrh15R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh15R { bits }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&self) -> Afrh14R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh14R { bits }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&self) -> Afrh13R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh13R { bits }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&self) -> Afrh12R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh12R { bits }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&self) -> Afrh11R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh11R { bits }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&self) -> Afrh10R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh10R { bits }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&self) -> Afrh9R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh9R { bits }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&self) -> Afrh8R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Afrh8R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&mut self) -> _Afrh15W {
+                _Afrh15W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&mut self) -> _Afrh14W {
+                _Afrh14W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&mut self) -> _Afrh13W {
+                _Afrh13W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&mut self) -> _Afrh12W {
+                _Afrh12W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&mut self) -> _Afrh11W {
+                _Afrh11W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&mut self) -> _Afrh10W {
+                _Afrh10W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&mut self) -> _Afrh9W {
+                _Afrh9W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&mut self) -> _Afrh8W {
+                _Afrh8W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub struct Gpiob {
+    register_block: gpiob::RegisterBlock,
+}
+impl Deref for Gpiob {
+    type Target = gpiob::RegisterBlock;
+    fn deref(&self) -> &gpiob::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub const GPIOA: Peripheral<Gpioa> = unsafe { Peripheral::new(1073872896) };
+# [ doc = "General-purpose I/Os" ]
+pub mod gpioa {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - GPIO port mode register" ]
+        pub moder: Moder,
+        # [ doc = "0x04 - GPIO port output type register" ]
+        pub otyper: Otyper,
+        # [ doc = "0x08 - GPIO port output speed register" ]
+        pub ospeedr: Ospeedr,
+        # [ doc = "0x0c - GPIO port pull-up/pull-down register" ]
+        pub pupdr: Pupdr,
+        # [ doc = "0x10 - GPIO port input data register" ]
+        pub idr: Idr,
+        # [ doc = "0x14 - GPIO port output data register" ]
+        pub odr: Odr,
+        # [ doc = "0x18 - GPIO port bit set/reset register" ]
+        pub bsrr: Bsrr,
+        # [ doc = "0x1c - GPIO port configuration lock register" ]
+        pub lckr: Lckr,
+        # [ doc = "0x20 - GPIO alternate function low register" ]
+        pub afrl: Afrl,
+        # [ doc = "0x24 - GPIO alternate function high register" ]
+        pub afrh: Afrh,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub struct Moder {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port mode register" ]
+    pub mod moder {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Moder {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `MODER15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Moder15R {
+            # [ doc = "00: Input (reset state)" ]
+            InputMode,
+            # [ doc = "01: General purpose output mode" ]
+            OutputMode,
+            # [ doc = "10: Alternate function mode" ]
+            AlternateMode,
+            # [ doc = "11: Analog mode" ]
+            AnalogMode,
+        }
+        impl Moder15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Moder15R::InputMode => 0,
+                    Moder15R::OutputMode => 1,
+                    Moder15R::AlternateMode => 2,
+                    Moder15R::AnalogMode => 3,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Moder15R {
+                match bits {
+                    0 => Moder15R::InputMode,
+                    1 => Moder15R::OutputMode,
+                    2 => Moder15R::AlternateMode,
+                    3 => Moder15R::AnalogMode,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `InputMode`" ]
+            # [ inline ( always ) ]
+            pub fn is_input_mode(&self) -> bool {
+                *self == Moder15R::InputMode
+            }
+            # [ doc = "Checks if the value of the field is `OutputMode`" ]
+            # [ inline ( always ) ]
+            pub fn is_output_mode(&self) -> bool {
+                *self == Moder15R::OutputMode
+            }
+            # [ doc = "Checks if the value of the field is `AlternateMode`" ]
+            # [ inline ( always ) ]
+            pub fn is_alternate_mode(&self) -> bool {
+                *self == Moder15R::AlternateMode
+            }
+            # [ doc = "Checks if the value of the field is `AnalogMode`" ]
+            # [ inline ( always ) ]
+            pub fn is_analog_mode(&self) -> bool {
+                *self == Moder15R::AnalogMode
+            }
+        }
+        # [ doc = "Possible values of the field `MODER14`" ]
+        pub type Moder14R = Moder15R;
+        # [ doc = "Possible values of the field `MODER13`" ]
+        pub type Moder13R = Moder15R;
+        # [ doc = "Possible values of the field `MODER12`" ]
+        pub type Moder12R = Moder15R;
+        # [ doc = "Possible values of the field `MODER11`" ]
+        pub type Moder11R = Moder15R;
+        # [ doc = "Possible values of the field `MODER10`" ]
+        pub type Moder10R = Moder15R;
+        # [ doc = "Possible values of the field `MODER9`" ]
+        pub type Moder9R = Moder15R;
+        # [ doc = "Possible values of the field `MODER8`" ]
+        pub type Moder8R = Moder15R;
+        # [ doc = "Possible values of the field `MODER7`" ]
+        pub type Moder7R = Moder15R;
+        # [ doc = "Possible values of the field `MODER6`" ]
+        pub type Moder6R = Moder15R;
+        # [ doc = "Possible values of the field `MODER5`" ]
+        pub type Moder5R = Moder15R;
+        # [ doc = "Possible values of the field `MODER4`" ]
+        pub type Moder4R = Moder15R;
+        # [ doc = "Possible values of the field `MODER3`" ]
+        pub type Moder3R = Moder15R;
+        # [ doc = "Possible values of the field `MODER2`" ]
+        pub type Moder2R = Moder15R;
+        # [ doc = "Possible values of the field `MODER1`" ]
+        pub type Moder1R = Moder15R;
+        # [ doc = "Possible values of the field `MODER0`" ]
+        pub type Moder0R = Moder15R;
+        # [ doc = "Values that can be written to the field `MODER15`" ]
+        pub enum Moder15W {
+            # [ doc = "00: Input (reset state)" ]
+            InputMode,
+            # [ doc = "01: General purpose output mode" ]
+            OutputMode,
+            # [ doc = "10: Alternate function mode" ]
+            AlternateMode,
+            # [ doc = "11: Analog mode" ]
+            AnalogMode,
+        }
+        impl Moder15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Moder15W::InputMode => 0,
+                    Moder15W::OutputMode => 1,
+                    Moder15W::AlternateMode => 2,
+                    Moder15W::AnalogMode => 3,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Moder15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER14`" ]
+        pub type Moder14W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER13`" ]
+        pub type Moder13W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER12`" ]
+        pub type Moder12W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER11`" ]
+        pub type Moder11W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER10`" ]
+        pub type Moder10W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER9`" ]
+        pub type Moder9W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER8`" ]
+        pub type Moder8W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER7`" ]
+        pub type Moder7W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER6`" ]
+        pub type Moder6W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER5`" ]
+        pub type Moder5W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER4`" ]
+        pub type Moder4W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER3`" ]
+        pub type Moder3W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER2`" ]
+        pub type Moder2W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER1`" ]
+        pub type Moder1W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `MODER0`" ]
+        pub type Moder0W = Moder15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Moder0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Moder0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Moder0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Input (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn input_mode(self) -> &'a mut W {
+                self.variant(Moder15W::InputMode)
+            }
+            # [ doc = "01: General purpose output mode" ]
+            # [ inline ( always ) ]
+            pub fn output_mode(self) -> &'a mut W {
+                self.variant(Moder15W::OutputMode)
+            }
+            # [ doc = "10: Alternate function mode" ]
+            # [ inline ( always ) ]
+            pub fn alternate_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AlternateMode)
+            }
+            # [ doc = "11: Analog mode" ]
+            # [ inline ( always ) ]
+            pub fn analog_mode(self) -> &'a mut W {
+                self.variant(Moder15W::AnalogMode)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&self) -> Moder15R {
+                Moder15R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 30;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&self) -> Moder14R {
+                Moder14R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 28;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&self) -> Moder13R {
+                Moder13R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 26;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&self) -> Moder12R {
+                Moder12R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 24;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&self) -> Moder11R {
+                Moder11R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 22;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&self) -> Moder10R {
+                Moder10R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 20;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&self) -> Moder9R {
+                Moder9R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 18;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&self) -> Moder8R {
+                Moder8R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&self) -> Moder7R {
+                Moder7R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 14;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&self) -> Moder6R {
+                Moder6R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&self) -> Moder5R {
+                Moder5R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 10;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&self) -> Moder4R {
+                Moder4R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&self) -> Moder3R {
+                Moder3R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&self) -> Moder2R {
+                Moder2R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&self) -> Moder1R {
+                Moder1R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&self) -> Moder0R {
+                Moder0R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2818572288 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder15(&mut self) -> _Moder15W {
+                _Moder15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder14(&mut self) -> _Moder14W {
+                _Moder14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder13(&mut self) -> _Moder13W {
+                _Moder13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder12(&mut self) -> _Moder12W {
+                _Moder12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder11(&mut self) -> _Moder11W {
+                _Moder11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder10(&mut self) -> _Moder10W {
+                _Moder10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder9(&mut self) -> _Moder9W {
+                _Moder9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder8(&mut self) -> _Moder8W {
+                _Moder8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder7(&mut self) -> _Moder7W {
+                _Moder7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder6(&mut self) -> _Moder6W {
+                _Moder6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder5(&mut self) -> _Moder5W {
+                _Moder5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder4(&mut self) -> _Moder4W {
+                _Moder4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder3(&mut self) -> _Moder3W {
+                _Moder3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder2(&mut self) -> _Moder2W {
+                _Moder2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder1(&mut self) -> _Moder1W {
+                _Moder1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn moder0(&mut self) -> _Moder0W {
+                _Moder0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub struct Otyper {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output type register" ]
+    pub mod otyper {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Otyper {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `OT15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Ot15R {
+            # [ doc = "0: Output push-pull (reset state)" ]
+            PushPull,
+            # [ doc = "1: Output open-drain" ]
+            OpenDrain,
+        }
+        impl Ot15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Ot15R::PushPull => 0,
+                    Ot15R::OpenDrain => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Ot15R {
+                match bits {
+                    0 => Ot15R::PushPull,
+                    1 => Ot15R::OpenDrain,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `PushPull`" ]
+            # [ inline ( always ) ]
+            pub fn is_push_pull(&self) -> bool {
+                *self == Ot15R::PushPull
+            }
+            # [ doc = "Checks if the value of the field is `OpenDrain`" ]
+            # [ inline ( always ) ]
+            pub fn is_open_drain(&self) -> bool {
+                *self == Ot15R::OpenDrain
+            }
+        }
+        # [ doc = "Possible values of the field `OT14`" ]
+        pub type Ot14R = Ot15R;
+        # [ doc = "Possible values of the field `OT13`" ]
+        pub type Ot13R = Ot15R;
+        # [ doc = "Possible values of the field `OT12`" ]
+        pub type Ot12R = Ot15R;
+        # [ doc = "Possible values of the field `OT11`" ]
+        pub type Ot11R = Ot15R;
+        # [ doc = "Possible values of the field `OT10`" ]
+        pub type Ot10R = Ot15R;
+        # [ doc = "Possible values of the field `OT9`" ]
+        pub type Ot9R = Ot15R;
+        # [ doc = "Possible values of the field `OT8`" ]
+        pub type Ot8R = Ot15R;
+        # [ doc = "Possible values of the field `OT7`" ]
+        pub type Ot7R = Ot15R;
+        # [ doc = "Possible values of the field `OT6`" ]
+        pub type Ot6R = Ot15R;
+        # [ doc = "Possible values of the field `OT5`" ]
+        pub type Ot5R = Ot15R;
+        # [ doc = "Possible values of the field `OT4`" ]
+        pub type Ot4R = Ot15R;
+        # [ doc = "Possible values of the field `OT3`" ]
+        pub type Ot3R = Ot15R;
+        # [ doc = "Possible values of the field `OT2`" ]
+        pub type Ot2R = Ot15R;
+        # [ doc = "Possible values of the field `OT1`" ]
+        pub type Ot1R = Ot15R;
+        # [ doc = "Possible values of the field `OT0`" ]
+        pub type Ot0R = Ot15R;
+        # [ doc = "Values that can be written to the field `OT15`" ]
+        pub enum Ot15W {
+            # [ doc = "0: Output push-pull (reset state)" ]
+            PushPull,
+            # [ doc = "1: Output open-drain" ]
+            OpenDrain,
+        }
+        impl Ot15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Ot15W::PushPull => 0,
+                    Ot15W::OpenDrain => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ot15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT14`" ]
+        pub type Ot14W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT13`" ]
+        pub type Ot13W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT12`" ]
+        pub type Ot12W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT11`" ]
+        pub type Ot11W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT10`" ]
+        pub type Ot10W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT9`" ]
+        pub type Ot9W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT8`" ]
+        pub type Ot8W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT7`" ]
+        pub type Ot7W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT6`" ]
+        pub type Ot6W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT5`" ]
+        pub type Ot5W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT4`" ]
+        pub type Ot4W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT3`" ]
+        pub type Ot3W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT2`" ]
+        pub type Ot2W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT1`" ]
+        pub type Ot1W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OT0`" ]
+        pub type Ot0W = Ot15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ot0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ot0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ot0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Output push-pull (reset state)" ]
+            # [ inline ( always ) ]
+            pub fn push_pull(self) -> &'a mut W {
+                self.variant(Ot15W::PushPull)
+            }
+            # [ doc = "1: Output open-drain" ]
+            # [ inline ( always ) ]
+            pub fn open_drain(self) -> &'a mut W {
+                self.variant(Ot15W::OpenDrain)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&self) -> Ot15R {
+                Ot15R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 15;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&self) -> Ot14R {
+                Ot14R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 14;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&self) -> Ot13R {
+                Ot13R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 13;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&self) -> Ot12R {
+                Ot12R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&self) -> Ot11R {
+                Ot11R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 11;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&self) -> Ot10R {
+                Ot10R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 10;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&self) -> Ot9R {
+                Ot9R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 9;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&self) -> Ot8R {
+                Ot8R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&self) -> Ot7R {
+                Ot7R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 7;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&self) -> Ot6R {
+                Ot6R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&self) -> Ot5R {
+                Ot5R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 5;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&self) -> Ot4R {
+                Ot4R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&self) -> Ot3R {
+                Ot3R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 3;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&self) -> Ot2R {
+                Ot2R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&self) -> Ot1R {
+                Ot1R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 1;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&self) -> Ot0R {
+                Ot0R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot15(&mut self) -> _Ot15W {
+                _Ot15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot14(&mut self) -> _Ot14W {
+                _Ot14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot13(&mut self) -> _Ot13W {
+                _Ot13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot12(&mut self) -> _Ot12W {
+                _Ot12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot11(&mut self) -> _Ot11W {
+                _Ot11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot10(&mut self) -> _Ot10W {
+                _Ot10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot9(&mut self) -> _Ot9W {
+                _Ot9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot8(&mut self) -> _Ot8W {
+                _Ot8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot7(&mut self) -> _Ot7W {
+                _Ot7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot6(&mut self) -> _Ot6W {
+                _Ot6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot5(&mut self) -> _Ot5W {
+                _Ot5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot4(&mut self) -> _Ot4W {
+                _Ot4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot3(&mut self) -> _Ot3W {
+                _Ot3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot2(&mut self) -> _Ot2W {
+                _Ot2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot1(&mut self) -> _Ot1W {
+                _Ot1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ot0(&mut self) -> _Ot0W {
+                _Ot0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub struct Ospeedr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output speed register" ]
+    pub mod ospeedr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ospeedr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `OSPEEDR15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Ospeedr15R {
+            # [ doc = "00: Low speed" ]
+            LowSpeed,
+            # [ doc = "01: Medium speed" ]
+            MediumSpeed,
+            # [ doc = "10: Fast speed" ]
+            FastSpeed,
+            # [ doc = "11: High speed" ]
+            HighSpeed,
+        }
+        impl Ospeedr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Ospeedr15R::LowSpeed => 0,
+                    Ospeedr15R::MediumSpeed => 1,
+                    Ospeedr15R::FastSpeed => 2,
+                    Ospeedr15R::HighSpeed => 3,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Ospeedr15R {
+                match bits {
+                    0 => Ospeedr15R::LowSpeed,
+                    1 => Ospeedr15R::MediumSpeed,
+                    2 => Ospeedr15R::FastSpeed,
+                    3 => Ospeedr15R::HighSpeed,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `LowSpeed`" ]
+            # [ inline ( always ) ]
+            pub fn is_low_speed(&self) -> bool {
+                *self == Ospeedr15R::LowSpeed
+            }
+            # [ doc = "Checks if the value of the field is `MediumSpeed`" ]
+            # [ inline ( always ) ]
+            pub fn is_medium_speed(&self) -> bool {
+                *self == Ospeedr15R::MediumSpeed
+            }
+            # [ doc = "Checks if the value of the field is `FastSpeed`" ]
+            # [ inline ( always ) ]
+            pub fn is_fast_speed(&self) -> bool {
+                *self == Ospeedr15R::FastSpeed
+            }
+            # [ doc = "Checks if the value of the field is `HighSpeed`" ]
+            # [ inline ( always ) ]
+            pub fn is_high_speed(&self) -> bool {
+                *self == Ospeedr15R::HighSpeed
+            }
+        }
+        # [ doc = "Possible values of the field `OSPEEDR14`" ]
+        pub type Ospeedr14R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR13`" ]
+        pub type Ospeedr13R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR12`" ]
+        pub type Ospeedr12R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR11`" ]
+        pub type Ospeedr11R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR10`" ]
+        pub type Ospeedr10R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR9`" ]
+        pub type Ospeedr9R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR8`" ]
+        pub type Ospeedr8R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR7`" ]
+        pub type Ospeedr7R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR6`" ]
+        pub type Ospeedr6R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR5`" ]
+        pub type Ospeedr5R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR4`" ]
+        pub type Ospeedr4R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR3`" ]
+        pub type Ospeedr3R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR2`" ]
+        pub type Ospeedr2R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR1`" ]
+        pub type Ospeedr1R = Ospeedr15R;
+        # [ doc = "Possible values of the field `OSPEEDR0`" ]
+        pub type Ospeedr0R = Ospeedr15R;
+        # [ doc = "Values that can be written to the field `OSPEEDR15`" ]
+        pub enum Ospeedr15W {
+            # [ doc = "00: Low speed" ]
+            LowSpeed,
+            # [ doc = "01: Medium speed" ]
+            MediumSpeed,
+            # [ doc = "10: Fast speed" ]
+            FastSpeed,
+            # [ doc = "11: High speed" ]
+            HighSpeed,
+        }
+        impl Ospeedr15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Ospeedr15W::LowSpeed => 0,
+                    Ospeedr15W::MediumSpeed => 1,
+                    Ospeedr15W::FastSpeed => 2,
+                    Ospeedr15W::HighSpeed => 3,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR14`" ]
+        pub type Ospeedr14W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR13`" ]
+        pub type Ospeedr13W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR12`" ]
+        pub type Ospeedr12W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR11`" ]
+        pub type Ospeedr11W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR10`" ]
+        pub type Ospeedr10W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR9`" ]
+        pub type Ospeedr9W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR8`" ]
+        pub type Ospeedr8W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR7`" ]
+        pub type Ospeedr7W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR6`" ]
+        pub type Ospeedr6W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR5`" ]
+        pub type Ospeedr5W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR4`" ]
+        pub type Ospeedr4W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR3`" ]
+        pub type Ospeedr3W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR2`" ]
+        pub type Ospeedr2W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR1`" ]
+        pub type Ospeedr1W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `OSPEEDR0`" ]
+        pub type Ospeedr0W = Ospeedr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Ospeedr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ospeedr0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Ospeedr0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: Low speed" ]
+            # [ inline ( always ) ]
+            pub fn low_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::LowSpeed)
+            }
+            # [ doc = "01: Medium speed" ]
+            # [ inline ( always ) ]
+            pub fn medium_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::MediumSpeed)
+            }
+            # [ doc = "10: Fast speed" ]
+            # [ inline ( always ) ]
+            pub fn fast_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::FastSpeed)
+            }
+            # [ doc = "11: High speed" ]
+            # [ inline ( always ) ]
+            pub fn high_speed(self) -> &'a mut W {
+                self.variant(Ospeedr15W::HighSpeed)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&self) -> Ospeedr15R {
+                Ospeedr15R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 30;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&self) -> Ospeedr14R {
+                Ospeedr14R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 28;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&self) -> Ospeedr13R {
+                Ospeedr13R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 26;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&self) -> Ospeedr12R {
+                Ospeedr12R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 24;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&self) -> Ospeedr11R {
+                Ospeedr11R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 22;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&self) -> Ospeedr10R {
+                Ospeedr10R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 20;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&self) -> Ospeedr9R {
+                Ospeedr9R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 18;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&self) -> Ospeedr8R {
+                Ospeedr8R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&self) -> Ospeedr7R {
+                Ospeedr7R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 14;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&self) -> Ospeedr6R {
+                Ospeedr6R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&self) -> Ospeedr5R {
+                Ospeedr5R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 10;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&self) -> Ospeedr4R {
+                Ospeedr4R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&self) -> Ospeedr3R {
+                Ospeedr3R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&self) -> Ospeedr2R {
+                Ospeedr2R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&self) -> Ospeedr1R {
+                Ospeedr1R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&self) -> Ospeedr0R {
+                Ospeedr0R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr15(&mut self) -> _Ospeedr15W {
+                _Ospeedr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr14(&mut self) -> _Ospeedr14W {
+                _Ospeedr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr13(&mut self) -> _Ospeedr13W {
+                _Ospeedr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr12(&mut self) -> _Ospeedr12W {
+                _Ospeedr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr11(&mut self) -> _Ospeedr11W {
+                _Ospeedr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr10(&mut self) -> _Ospeedr10W {
+                _Ospeedr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr9(&mut self) -> _Ospeedr9W {
+                _Ospeedr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr8(&mut self) -> _Ospeedr8W {
+                _Ospeedr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr7(&mut self) -> _Ospeedr7W {
+                _Ospeedr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr6(&mut self) -> _Ospeedr6W {
+                _Ospeedr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr5(&mut self) -> _Ospeedr5W {
+                _Ospeedr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr4(&mut self) -> _Ospeedr4W {
+                _Ospeedr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr3(&mut self) -> _Ospeedr3W {
+                _Ospeedr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr2(&mut self) -> _Ospeedr2W {
+                _Ospeedr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr1(&mut self) -> _Ospeedr1W {
+                _Ospeedr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn ospeedr0(&mut self) -> _Ospeedr0W {
+                _Ospeedr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub struct Pupdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port pull-up/pull-down register" ]
+    pub mod pupdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pupdr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `PUPDR15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Pupdr15R {
+            # [ doc = "00: No pull-up, pull-down" ]
+            NoPullUpPullDown,
+            # [ doc = "01: Pull-up" ]
+            PullUp,
+            # [ doc = "10: Pull-down" ]
+            PullDown,
+            # [ doc = "11: Reserved" ]
+            Reserved,
+        }
+        impl Pupdr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Pupdr15R::NoPullUpPullDown => 0,
+                    Pupdr15R::PullUp => 1,
+                    Pupdr15R::PullDown => 2,
+                    Pupdr15R::Reserved => 3,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Pupdr15R {
+                match bits {
+                    0 => Pupdr15R::NoPullUpPullDown,
+                    1 => Pupdr15R::PullUp,
+                    2 => Pupdr15R::PullDown,
+                    3 => Pupdr15R::Reserved,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NoPullUpPullDown`" ]
+            # [ inline ( always ) ]
+            pub fn is_no_pull_up_pull_down(&self) -> bool {
+                *self == Pupdr15R::NoPullUpPullDown
+            }
+            # [ doc = "Checks if the value of the field is `PullUp`" ]
+            # [ inline ( always ) ]
+            pub fn is_pull_up(&self) -> bool {
+                *self == Pupdr15R::PullUp
+            }
+            # [ doc = "Checks if the value of the field is `PullDown`" ]
+            # [ inline ( always ) ]
+            pub fn is_pull_down(&self) -> bool {
+                *self == Pupdr15R::PullDown
+            }
+            # [ doc = "Checks if the value of the field is `Reserved`" ]
+            # [ inline ( always ) ]
+            pub fn is_reserved(&self) -> bool {
+                *self == Pupdr15R::Reserved
+            }
+        }
+        # [ doc = "Possible values of the field `PUPDR14`" ]
+        pub type Pupdr14R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR13`" ]
+        pub type Pupdr13R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR12`" ]
+        pub type Pupdr12R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR11`" ]
+        pub type Pupdr11R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR10`" ]
+        pub type Pupdr10R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR9`" ]
+        pub type Pupdr9R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR8`" ]
+        pub type Pupdr8R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR7`" ]
+        pub type Pupdr7R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR6`" ]
+        pub type Pupdr6R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR5`" ]
+        pub type Pupdr5R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR4`" ]
+        pub type Pupdr4R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR3`" ]
+        pub type Pupdr3R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR2`" ]
+        pub type Pupdr2R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR1`" ]
+        pub type Pupdr1R = Pupdr15R;
+        # [ doc = "Possible values of the field `PUPDR0`" ]
+        pub type Pupdr0R = Pupdr15R;
+        # [ doc = "Values that can be written to the field `PUPDR15`" ]
+        pub enum Pupdr15W {
+            # [ doc = "00: No pull-up, pull-down" ]
+            NoPullUpPullDown,
+            # [ doc = "01: Pull-up" ]
+            PullUp,
+            # [ doc = "10: Pull-down" ]
+            PullDown,
+            # [ doc = "11: Reserved" ]
+            Reserved,
+        }
+        impl Pupdr15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Pupdr15W::NoPullUpPullDown => 0,
+                    Pupdr15W::PullUp => 1,
+                    Pupdr15W::PullDown => 2,
+                    Pupdr15W::Reserved => 3,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR14`" ]
+        pub type Pupdr14W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR13`" ]
+        pub type Pupdr13W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR12`" ]
+        pub type Pupdr12W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR11`" ]
+        pub type Pupdr11W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR10`" ]
+        pub type Pupdr10W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR9`" ]
+        pub type Pupdr9W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR8`" ]
+        pub type Pupdr8W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR7`" ]
+        pub type Pupdr7W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR6`" ]
+        pub type Pupdr6W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR5`" ]
+        pub type Pupdr5W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR4`" ]
+        pub type Pupdr4W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR3`" ]
+        pub type Pupdr3W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR2`" ]
+        pub type Pupdr2W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR1`" ]
+        pub type Pupdr1W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `PUPDR0`" ]
+        pub type Pupdr0W = Pupdr15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Pupdr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pupdr0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Pupdr0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "00: No pull-up, pull-down" ]
+            # [ inline ( always ) ]
+            pub fn no_pull_up_pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::NoPullUpPullDown)
+            }
+            # [ doc = "01: Pull-up" ]
+            # [ inline ( always ) ]
+            pub fn pull_up(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullUp)
+            }
+            # [ doc = "10: Pull-down" ]
+            # [ inline ( always ) ]
+            pub fn pull_down(self) -> &'a mut W {
+                self.variant(Pupdr15W::PullDown)
+            }
+            # [ doc = "11: Reserved" ]
+            # [ inline ( always ) ]
+            pub fn reserved(self) -> &'a mut W {
+                self.variant(Pupdr15W::Reserved)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&self) -> Pupdr15R {
+                Pupdr15R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 30;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&self) -> Pupdr14R {
+                Pupdr14R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 28;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&self) -> Pupdr13R {
+                Pupdr13R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 26;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&self) -> Pupdr12R {
+                Pupdr12R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 24;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&self) -> Pupdr11R {
+                Pupdr11R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 22;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&self) -> Pupdr10R {
+                Pupdr10R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 20;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&self) -> Pupdr9R {
+                Pupdr9R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 18;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&self) -> Pupdr8R {
+                Pupdr8R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&self) -> Pupdr7R {
+                Pupdr7R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 14;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&self) -> Pupdr6R {
+                Pupdr6R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&self) -> Pupdr5R {
+                Pupdr5R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 10;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&self) -> Pupdr4R {
+                Pupdr4R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&self) -> Pupdr3R {
+                Pupdr3R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&self) -> Pupdr2R {
+                Pupdr2R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&self) -> Pupdr1R {
+                Pupdr1R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&self) -> Pupdr0R {
+                Pupdr0R::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1677721600 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 30:31 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr15(&mut self) -> _Pupdr15W {
+                _Pupdr15W { w: self }
+            }
+            # [ doc = "Bits 28:29 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr14(&mut self) -> _Pupdr14W {
+                _Pupdr14W { w: self }
+            }
+            # [ doc = "Bits 26:27 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr13(&mut self) -> _Pupdr13W {
+                _Pupdr13W { w: self }
+            }
+            # [ doc = "Bits 24:25 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr12(&mut self) -> _Pupdr12W {
+                _Pupdr12W { w: self }
+            }
+            # [ doc = "Bits 22:23 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr11(&mut self) -> _Pupdr11W {
+                _Pupdr11W { w: self }
+            }
+            # [ doc = "Bits 20:21 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr10(&mut self) -> _Pupdr10W {
+                _Pupdr10W { w: self }
+            }
+            # [ doc = "Bits 18:19 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr9(&mut self) -> _Pupdr9W {
+                _Pupdr9W { w: self }
+            }
+            # [ doc = "Bits 16:17 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr8(&mut self) -> _Pupdr8W {
+                _Pupdr8W { w: self }
+            }
+            # [ doc = "Bits 14:15 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr7(&mut self) -> _Pupdr7W {
+                _Pupdr7W { w: self }
+            }
+            # [ doc = "Bits 12:13 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr6(&mut self) -> _Pupdr6W {
+                _Pupdr6W { w: self }
+            }
+            # [ doc = "Bits 10:11 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr5(&mut self) -> _Pupdr5W {
+                _Pupdr5W { w: self }
+            }
+            # [ doc = "Bits 8:9 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr4(&mut self) -> _Pupdr4W {
+                _Pupdr4W { w: self }
+            }
+            # [ doc = "Bits 6:7 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr3(&mut self) -> _Pupdr3W {
+                _Pupdr3W { w: self }
+            }
+            # [ doc = "Bits 4:5 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr2(&mut self) -> _Pupdr2W {
+                _Pupdr2W { w: self }
+            }
+            # [ doc = "Bits 2:3 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr1(&mut self) -> _Pupdr1W {
+                _Pupdr1W { w: self }
+            }
+            # [ doc = "Bits 0:1 - Port x configuration bits (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn pupdr0(&mut self) -> _Pupdr0W {
+                _Pupdr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub struct Idr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port input data register" ]
+    pub mod idr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Idr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr15R {
+            bits: u8,
+        }
+        impl Idr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr14R {
+            bits: u8,
+        }
+        impl Idr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr13R {
+            bits: u8,
+        }
+        impl Idr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr12R {
+            bits: u8,
+        }
+        impl Idr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr11R {
+            bits: u8,
+        }
+        impl Idr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr10R {
+            bits: u8,
+        }
+        impl Idr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr9R {
+            bits: u8,
+        }
+        impl Idr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr8R {
+            bits: u8,
+        }
+        impl Idr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr7R {
+            bits: u8,
+        }
+        impl Idr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr6R {
+            bits: u8,
+        }
+        impl Idr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr5R {
+            bits: u8,
+        }
+        impl Idr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr4R {
+            bits: u8,
+        }
+        impl Idr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr3R {
+            bits: u8,
+        }
+        impl Idr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr2R {
+            bits: u8,
+        }
+        impl Idr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr1R {
+            bits: u8,
+        }
+        impl Idr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Idr0R {
+            bits: u8,
+        }
+        impl Idr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr15(&self) -> Idr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr14(&self) -> Idr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr13(&self) -> Idr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr12(&self) -> Idr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr11(&self) -> Idr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr10(&self) -> Idr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr9(&self) -> Idr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr8(&self) -> Idr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr7(&self) -> Idr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr6(&self) -> Idr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr5(&self) -> Idr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr4(&self) -> Idr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr3(&self) -> Idr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr2(&self) -> Idr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr1(&self) -> Idr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port input data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn idr0(&self) -> Idr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Idr0R { bits }
+            }
+        }
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub struct Odr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port output data register" ]
+    pub mod odr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Odr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr15R {
+            bits: u8,
+        }
+        impl Odr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr14R {
+            bits: u8,
+        }
+        impl Odr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr13R {
+            bits: u8,
+        }
+        impl Odr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr12R {
+            bits: u8,
+        }
+        impl Odr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr11R {
+            bits: u8,
+        }
+        impl Odr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr10R {
+            bits: u8,
+        }
+        impl Odr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr9R {
+            bits: u8,
+        }
+        impl Odr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr8R {
+            bits: u8,
+        }
+        impl Odr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr7R {
+            bits: u8,
+        }
+        impl Odr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr6R {
+            bits: u8,
+        }
+        impl Odr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr5R {
+            bits: u8,
+        }
+        impl Odr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr4R {
+            bits: u8,
+        }
+        impl Odr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr3R {
+            bits: u8,
+        }
+        impl Odr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr2R {
+            bits: u8,
+        }
+        impl Odr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr1R {
+            bits: u8,
+        }
+        impl Odr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Odr0R {
+            bits: u8,
+        }
+        impl Odr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Odr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Odr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&self) -> Odr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr15R { bits }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&self) -> Odr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr14R { bits }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&self) -> Odr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr13R { bits }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&self) -> Odr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr12R { bits }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&self) -> Odr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr11R { bits }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&self) -> Odr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr10R { bits }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&self) -> Odr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr9R { bits }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&self) -> Odr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr8R { bits }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&self) -> Odr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr7R { bits }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&self) -> Odr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr6R { bits }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&self) -> Odr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr5R { bits }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&self) -> Odr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr4R { bits }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&self) -> Odr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr3R { bits }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&self) -> Odr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr2R { bits }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&self) -> Odr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr1R { bits }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&self) -> Odr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Odr0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr15(&mut self) -> _Odr15W {
+                _Odr15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr14(&mut self) -> _Odr14W {
+                _Odr14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr13(&mut self) -> _Odr13W {
+                _Odr13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr12(&mut self) -> _Odr12W {
+                _Odr12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr11(&mut self) -> _Odr11W {
+                _Odr11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr10(&mut self) -> _Odr10W {
+                _Odr10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr9(&mut self) -> _Odr9W {
+                _Odr9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr8(&mut self) -> _Odr8W {
+                _Odr8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr7(&mut self) -> _Odr7W {
+                _Odr7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr6(&mut self) -> _Odr6W {
+                _Odr6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr5(&mut self) -> _Odr5W {
+                _Odr5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr4(&mut self) -> _Odr4W {
+                _Odr4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr3(&mut self) -> _Odr3W {
+                _Odr3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr2(&mut self) -> _Odr2W {
+                _Odr2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr1(&mut self) -> _Odr1W {
+                _Odr1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port output data (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn odr0(&mut self) -> _Odr0W {
+                _Odr0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub struct Bsrr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port bit set/reset register" ]
+    pub mod bsrr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bsrr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR15`" ]
+        pub enum Br15W {
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            NoAction,
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            SetResetBit,
+        }
+        impl Br15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Br15W::NoAction => 0,
+                    Br15W::SetResetBit => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Br15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR14`" ]
+        pub type Br14W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR13`" ]
+        pub type Br13W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR12`" ]
+        pub type Br12W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR11`" ]
+        pub type Br11W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR10`" ]
+        pub type Br10W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR9`" ]
+        pub type Br9W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR8`" ]
+        pub type Br8W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR7`" ]
+        pub type Br7W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR6`" ]
+        pub type Br6W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR5`" ]
+        pub type Br5W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR4`" ]
+        pub type Br4W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR3`" ]
+        pub type Br3W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR2`" ]
+        pub type Br2W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR1`" ]
+        pub type Br1W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BR0`" ]
+        pub type Br0W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Br0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Br0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Br0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS15`" ]
+        pub type Bs15W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS14`" ]
+        pub type Bs14W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS13`" ]
+        pub type Bs13W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS12`" ]
+        pub type Bs12W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS11`" ]
+        pub type Bs11W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS10`" ]
+        pub type Bs10W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS9`" ]
+        pub type Bs9W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS8`" ]
+        pub type Bs8W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS7`" ]
+        pub type Bs7W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS6`" ]
+        pub type Bs6W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS5`" ]
+        pub type Bs5W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS4`" ]
+        pub type Bs4W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS3`" ]
+        pub type Bs3W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS2`" ]
+        pub type Bs2W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS1`" ]
+        pub type Bs1W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `BS0`" ]
+        pub type Bs0W = Br15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Bs0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Bs0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Bs0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No action on the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn no_action(self) -> &'a mut W {
+                self.variant(Br15W::NoAction)
+            }
+            # [ doc = "1: Sets/Resets the corresponding ODRx bit" ]
+            # [ inline ( always ) ]
+            pub fn set_reset_bit(self) -> &'a mut W {
+                self.variant(Br15W::SetResetBit)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br15(&mut self) -> _Br15W {
+                _Br15W { w: self }
+            }
+            # [ doc = "Bit 30 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br14(&mut self) -> _Br14W {
+                _Br14W { w: self }
+            }
+            # [ doc = "Bit 29 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br13(&mut self) -> _Br13W {
+                _Br13W { w: self }
+            }
+            # [ doc = "Bit 28 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br12(&mut self) -> _Br12W {
+                _Br12W { w: self }
+            }
+            # [ doc = "Bit 27 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br11(&mut self) -> _Br11W {
+                _Br11W { w: self }
+            }
+            # [ doc = "Bit 26 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br10(&mut self) -> _Br10W {
+                _Br10W { w: self }
+            }
+            # [ doc = "Bit 25 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br9(&mut self) -> _Br9W {
+                _Br9W { w: self }
+            }
+            # [ doc = "Bit 24 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br8(&mut self) -> _Br8W {
+                _Br8W { w: self }
+            }
+            # [ doc = "Bit 23 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br7(&mut self) -> _Br7W {
+                _Br7W { w: self }
+            }
+            # [ doc = "Bit 22 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br6(&mut self) -> _Br6W {
+                _Br6W { w: self }
+            }
+            # [ doc = "Bit 21 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br5(&mut self) -> _Br5W {
+                _Br5W { w: self }
+            }
+            # [ doc = "Bit 20 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br4(&mut self) -> _Br4W {
+                _Br4W { w: self }
+            }
+            # [ doc = "Bit 19 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br3(&mut self) -> _Br3W {
+                _Br3W { w: self }
+            }
+            # [ doc = "Bit 18 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br2(&mut self) -> _Br2W {
+                _Br2W { w: self }
+            }
+            # [ doc = "Bit 17 - Port x reset bit y (y = 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br1(&mut self) -> _Br1W {
+                _Br1W { w: self }
+            }
+            # [ doc = "Bit 16 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn br0(&mut self) -> _Br0W {
+                _Br0W { w: self }
+            }
+            # [ doc = "Bit 15 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs15(&mut self) -> _Bs15W {
+                _Bs15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs14(&mut self) -> _Bs14W {
+                _Bs14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs13(&mut self) -> _Bs13W {
+                _Bs13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs12(&mut self) -> _Bs12W {
+                _Bs12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs11(&mut self) -> _Bs11W {
+                _Bs11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs10(&mut self) -> _Bs10W {
+                _Bs10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs9(&mut self) -> _Bs9W {
+                _Bs9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs8(&mut self) -> _Bs8W {
+                _Bs8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs7(&mut self) -> _Bs7W {
+                _Bs7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs6(&mut self) -> _Bs6W {
+                _Bs6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs5(&mut self) -> _Bs5W {
+                _Bs5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs4(&mut self) -> _Bs4W {
+                _Bs4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs3(&mut self) -> _Bs3W {
+                _Bs3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs2(&mut self) -> _Bs2W {
+                _Bs2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs1(&mut self) -> _Bs1W {
+                _Bs1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x set bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn bs0(&mut self) -> _Bs0W {
+                _Bs0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub struct Lckr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO port configuration lock register" ]
+    pub mod lckr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Lckr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `LCKK`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum LckkR {
+            # [ doc = "0: Port configuration lock key not active" ]
+            LockKeyNotActive,
+            # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset\n                  or a peripheral reset occurs." ]
+            LockKeyActive,
+        }
+        impl LckkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    LckkR::LockKeyNotActive => 0,
+                    LckkR::LockKeyActive => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> LckkR {
+                match bits {
+                    0 => LckkR::LockKeyNotActive,
+                    1 => LckkR::LockKeyActive,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `LockKeyNotActive`" ]
+            # [ inline ( always ) ]
+            pub fn is_lock_key_not_active(&self) -> bool {
+                *self == LckkR::LockKeyNotActive
+            }
+            # [ doc = "Checks if the value of the field is `LockKeyActive`" ]
+            # [ inline ( always ) ]
+            pub fn is_lock_key_active(&self) -> bool {
+                *self == LckkR::LockKeyActive
+            }
+        }
+        # [ doc = "Possible values of the field `LCK15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Lck15R {
+            # [ doc = "0: Port configuration not locked" ]
+            LockKeyNotActive,
+            # [ doc = "1: Port configuration locked" ]
+            LockKeyActive,
+        }
+        impl Lck15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Lck15R::LockKeyNotActive => 0,
+                    Lck15R::LockKeyActive => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Lck15R {
+                match bits {
+                    0 => Lck15R::LockKeyNotActive,
+                    1 => Lck15R::LockKeyActive,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `LockKeyNotActive`" ]
+            # [ inline ( always ) ]
+            pub fn is_lock_key_not_active(&self) -> bool {
+                *self == Lck15R::LockKeyNotActive
+            }
+            # [ doc = "Checks if the value of the field is `LockKeyActive`" ]
+            # [ inline ( always ) ]
+            pub fn is_lock_key_active(&self) -> bool {
+                *self == Lck15R::LockKeyActive
+            }
+        }
+        # [ doc = "Possible values of the field `LCK14`" ]
+        pub type Lck14R = Lck15R;
+        # [ doc = "Possible values of the field `LCK13`" ]
+        pub type Lck13R = Lck15R;
+        # [ doc = "Possible values of the field `LCK12`" ]
+        pub type Lck12R = Lck15R;
+        # [ doc = "Possible values of the field `LCK11`" ]
+        pub type Lck11R = Lck15R;
+        # [ doc = "Possible values of the field `LCK10`" ]
+        pub type Lck10R = Lck15R;
+        # [ doc = "Possible values of the field `LCK9`" ]
+        pub type Lck9R = Lck15R;
+        # [ doc = "Possible values of the field `LCK8`" ]
+        pub type Lck8R = Lck15R;
+        # [ doc = "Possible values of the field `LCK7`" ]
+        pub type Lck7R = Lck15R;
+        # [ doc = "Possible values of the field `LCK6`" ]
+        pub type Lck6R = Lck15R;
+        # [ doc = "Possible values of the field `LCK5`" ]
+        pub type Lck5R = Lck15R;
+        # [ doc = "Possible values of the field `LCK4`" ]
+        pub type Lck4R = Lck15R;
+        # [ doc = "Possible values of the field `LCK3`" ]
+        pub type Lck3R = Lck15R;
+        # [ doc = "Possible values of the field `LCK2`" ]
+        pub type Lck2R = Lck15R;
+        # [ doc = "Possible values of the field `LCK1`" ]
+        pub type Lck1R = Lck15R;
+        # [ doc = "Possible values of the field `LCK0`" ]
+        pub type Lck0R = Lck15R;
+        # [ doc = "Values that can be written to the field `LCKK`" ]
+        pub enum LckkW {
+            # [ doc = "0: Port configuration lock key not active" ]
+            LockKeyNotActive,
+            # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset\n                  or a peripheral reset occurs." ]
+            LockKeyActive,
+        }
+        impl LckkW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    LckkW::LockKeyNotActive => 0,
+                    LckkW::LockKeyActive => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LckkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LckkW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: LckkW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration lock key not active" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(LckkW::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration lock key active. The GPIOx_LCKR register is locked until an MCU reset or a peripheral reset occurs." ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(LckkW::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK15`" ]
+        pub enum Lck15W {
+            # [ doc = "0: Port configuration not locked" ]
+            LockKeyNotActive,
+            # [ doc = "1: Port configuration locked" ]
+            LockKeyActive,
+        }
+        impl Lck15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Lck15W::LockKeyNotActive => 0,
+                    Lck15W::LockKeyActive => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Lck15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK14`" ]
+        pub type Lck14W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK13`" ]
+        pub type Lck13W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK12`" ]
+        pub type Lck12W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK11`" ]
+        pub type Lck11W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK10`" ]
+        pub type Lck10W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK9`" ]
+        pub type Lck9W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK8`" ]
+        pub type Lck8W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK7`" ]
+        pub type Lck7W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK6`" ]
+        pub type Lck6W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK5`" ]
+        pub type Lck5W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK4`" ]
+        pub type Lck4W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK3`" ]
+        pub type Lck3W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK2`" ]
+        pub type Lck2W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK1`" ]
+        pub type Lck1W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LCK0`" ]
+        pub type Lck0W = Lck15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Lck0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Lck0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Lck0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Port configuration not locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_not_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyNotActive)
+            }
+            # [ doc = "1: Port configuration locked" ]
+            # [ inline ( always ) ]
+            pub fn lock_key_active(self) -> &'a mut W {
+                self.variant(Lck15W::LockKeyActive)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&self) -> LckkR {
+                LckkR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&self) -> Lck15R {
+                Lck15R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 15;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&self) -> Lck14R {
+                Lck14R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 14;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&self) -> Lck13R {
+                Lck13R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 13;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&self) -> Lck12R {
+                Lck12R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&self) -> Lck11R {
+                Lck11R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 11;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&self) -> Lck10R {
+                Lck10R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 10;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&self) -> Lck9R {
+                Lck9R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 9;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&self) -> Lck8R {
+                Lck8R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&self) -> Lck7R {
+                Lck7R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 7;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&self) -> Lck6R {
+                Lck6R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&self) -> Lck5R {
+                Lck5R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 5;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&self) -> Lck4R {
+                Lck4R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&self) -> Lck3R {
+                Lck3R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 3;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&self) -> Lck2R {
+                Lck2R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&self) -> Lck1R {
+                Lck1R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 1;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&self) -> Lck0R {
+                Lck0R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lckk(&mut self) -> _LckkW {
+                _LckkW { w: self }
+            }
+            # [ doc = "Bit 15 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck15(&mut self) -> _Lck15W {
+                _Lck15W { w: self }
+            }
+            # [ doc = "Bit 14 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck14(&mut self) -> _Lck14W {
+                _Lck14W { w: self }
+            }
+            # [ doc = "Bit 13 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck13(&mut self) -> _Lck13W {
+                _Lck13W { w: self }
+            }
+            # [ doc = "Bit 12 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck12(&mut self) -> _Lck12W {
+                _Lck12W { w: self }
+            }
+            # [ doc = "Bit 11 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck11(&mut self) -> _Lck11W {
+                _Lck11W { w: self }
+            }
+            # [ doc = "Bit 10 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck10(&mut self) -> _Lck10W {
+                _Lck10W { w: self }
+            }
+            # [ doc = "Bit 9 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck9(&mut self) -> _Lck9W {
+                _Lck9W { w: self }
+            }
+            # [ doc = "Bit 8 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck8(&mut self) -> _Lck8W {
+                _Lck8W { w: self }
+            }
+            # [ doc = "Bit 7 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck7(&mut self) -> _Lck7W {
+                _Lck7W { w: self }
+            }
+            # [ doc = "Bit 6 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck6(&mut self) -> _Lck6W {
+                _Lck6W { w: self }
+            }
+            # [ doc = "Bit 5 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck5(&mut self) -> _Lck5W {
+                _Lck5W { w: self }
+            }
+            # [ doc = "Bit 4 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck4(&mut self) -> _Lck4W {
+                _Lck4W { w: self }
+            }
+            # [ doc = "Bit 3 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck3(&mut self) -> _Lck3W {
+                _Lck3W { w: self }
+            }
+            # [ doc = "Bit 2 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck2(&mut self) -> _Lck2W {
+                _Lck2W { w: self }
+            }
+            # [ doc = "Bit 1 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck1(&mut self) -> _Lck1W {
+                _Lck1W { w: self }
+            }
+            # [ doc = "Bit 0 - Port x lock bit y (y= 0..15)" ]
+            # [ inline ( always ) ]
+            pub fn lck0(&mut self) -> _Lck0W {
+                _Lck0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub struct Afrl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function low register" ]
+    pub mod afrl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `AFRL7`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Afrl7R {
+            # [ doc = "0000: AF0" ]
+            Af0,
+            # [ doc = "0001: AF1" ]
+            Af1,
+            # [ doc = "0010: AF2" ]
+            Af2,
+            # [ doc = "0011: AF3" ]
+            Af3,
+            # [ doc = "0100: AF4" ]
+            Af4,
+            # [ doc = "0101: AF5" ]
+            Af5,
+            # [ doc = "0110: AF6" ]
+            Af6,
+            # [ doc = "0111: AF7" ]
+            Af7,
+            # [ doc = "1000: AF8" ]
+            Af8,
+            # [ doc = "1001: AF9" ]
+            Af9,
+            # [ doc = "1010: AF10" ]
+            Af10,
+            # [ doc = "1011: AF11" ]
+            Af11,
+            # [ doc = "1100: AF12" ]
+            Af12,
+            # [ doc = "1101: AF13" ]
+            Af13,
+            # [ doc = "1110: AF14" ]
+            Af14,
+            # [ doc = "1111: AF15" ]
+            Af15,
+        }
+        impl Afrl7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Afrl7R::Af0 => 0,
+                    Afrl7R::Af1 => 1,
+                    Afrl7R::Af2 => 2,
+                    Afrl7R::Af3 => 3,
+                    Afrl7R::Af4 => 4,
+                    Afrl7R::Af5 => 5,
+                    Afrl7R::Af6 => 6,
+                    Afrl7R::Af7 => 7,
+                    Afrl7R::Af8 => 8,
+                    Afrl7R::Af9 => 9,
+                    Afrl7R::Af10 => 10,
+                    Afrl7R::Af11 => 11,
+                    Afrl7R::Af12 => 12,
+                    Afrl7R::Af13 => 13,
+                    Afrl7R::Af14 => 14,
+                    Afrl7R::Af15 => 15,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Afrl7R {
+                match bits {
+                    0 => Afrl7R::Af0,
+                    1 => Afrl7R::Af1,
+                    2 => Afrl7R::Af2,
+                    3 => Afrl7R::Af3,
+                    4 => Afrl7R::Af4,
+                    5 => Afrl7R::Af5,
+                    6 => Afrl7R::Af6,
+                    7 => Afrl7R::Af7,
+                    8 => Afrl7R::Af8,
+                    9 => Afrl7R::Af9,
+                    10 => Afrl7R::Af10,
+                    11 => Afrl7R::Af11,
+                    12 => Afrl7R::Af12,
+                    13 => Afrl7R::Af13,
+                    14 => Afrl7R::Af14,
+                    15 => Afrl7R::Af15,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `Af0`" ]
+            # [ inline ( always ) ]
+            pub fn is_af0(&self) -> bool {
+                *self == Afrl7R::Af0
+            }
+            # [ doc = "Checks if the value of the field is `Af1`" ]
+            # [ inline ( always ) ]
+            pub fn is_af1(&self) -> bool {
+                *self == Afrl7R::Af1
+            }
+            # [ doc = "Checks if the value of the field is `Af2`" ]
+            # [ inline ( always ) ]
+            pub fn is_af2(&self) -> bool {
+                *self == Afrl7R::Af2
+            }
+            # [ doc = "Checks if the value of the field is `Af3`" ]
+            # [ inline ( always ) ]
+            pub fn is_af3(&self) -> bool {
+                *self == Afrl7R::Af3
+            }
+            # [ doc = "Checks if the value of the field is `Af4`" ]
+            # [ inline ( always ) ]
+            pub fn is_af4(&self) -> bool {
+                *self == Afrl7R::Af4
+            }
+            # [ doc = "Checks if the value of the field is `Af5`" ]
+            # [ inline ( always ) ]
+            pub fn is_af5(&self) -> bool {
+                *self == Afrl7R::Af5
+            }
+            # [ doc = "Checks if the value of the field is `Af6`" ]
+            # [ inline ( always ) ]
+            pub fn is_af6(&self) -> bool {
+                *self == Afrl7R::Af6
+            }
+            # [ doc = "Checks if the value of the field is `Af7`" ]
+            # [ inline ( always ) ]
+            pub fn is_af7(&self) -> bool {
+                *self == Afrl7R::Af7
+            }
+            # [ doc = "Checks if the value of the field is `Af8`" ]
+            # [ inline ( always ) ]
+            pub fn is_af8(&self) -> bool {
+                *self == Afrl7R::Af8
+            }
+            # [ doc = "Checks if the value of the field is `Af9`" ]
+            # [ inline ( always ) ]
+            pub fn is_af9(&self) -> bool {
+                *self == Afrl7R::Af9
+            }
+            # [ doc = "Checks if the value of the field is `Af10`" ]
+            # [ inline ( always ) ]
+            pub fn is_af10(&self) -> bool {
+                *self == Afrl7R::Af10
+            }
+            # [ doc = "Checks if the value of the field is `Af11`" ]
+            # [ inline ( always ) ]
+            pub fn is_af11(&self) -> bool {
+                *self == Afrl7R::Af11
+            }
+            # [ doc = "Checks if the value of the field is `Af12`" ]
+            # [ inline ( always ) ]
+            pub fn is_af12(&self) -> bool {
+                *self == Afrl7R::Af12
+            }
+            # [ doc = "Checks if the value of the field is `Af13`" ]
+            # [ inline ( always ) ]
+            pub fn is_af13(&self) -> bool {
+                *self == Afrl7R::Af13
+            }
+            # [ doc = "Checks if the value of the field is `Af14`" ]
+            # [ inline ( always ) ]
+            pub fn is_af14(&self) -> bool {
+                *self == Afrl7R::Af14
+            }
+            # [ doc = "Checks if the value of the field is `Af15`" ]
+            # [ inline ( always ) ]
+            pub fn is_af15(&self) -> bool {
+                *self == Afrl7R::Af15
+            }
+        }
+        # [ doc = "Possible values of the field `AFRL6`" ]
+        pub type Afrl6R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL5`" ]
+        pub type Afrl5R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL4`" ]
+        pub type Afrl4R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL3`" ]
+        pub type Afrl3R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL2`" ]
+        pub type Afrl2R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL1`" ]
+        pub type Afrl1R = Afrl7R;
+        # [ doc = "Possible values of the field `AFRL0`" ]
+        pub type Afrl0R = Afrl7R;
+        # [ doc = "Values that can be written to the field `AFRL7`" ]
+        pub enum Afrl7W {
+            # [ doc = "0000: AF0" ]
+            Af0,
+            # [ doc = "0001: AF1" ]
+            Af1,
+            # [ doc = "0010: AF2" ]
+            Af2,
+            # [ doc = "0011: AF3" ]
+            Af3,
+            # [ doc = "0100: AF4" ]
+            Af4,
+            # [ doc = "0101: AF5" ]
+            Af5,
+            # [ doc = "0110: AF6" ]
+            Af6,
+            # [ doc = "0111: AF7" ]
+            Af7,
+            # [ doc = "1000: AF8" ]
+            Af8,
+            # [ doc = "1001: AF9" ]
+            Af9,
+            # [ doc = "1010: AF10" ]
+            Af10,
+            # [ doc = "1011: AF11" ]
+            Af11,
+            # [ doc = "1100: AF12" ]
+            Af12,
+            # [ doc = "1101: AF13" ]
+            Af13,
+            # [ doc = "1110: AF14" ]
+            Af14,
+            # [ doc = "1111: AF15" ]
+            Af15,
+        }
+        impl Afrl7W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Afrl7W::Af0 => 0,
+                    Afrl7W::Af1 => 1,
+                    Afrl7W::Af2 => 2,
+                    Afrl7W::Af3 => 3,
+                    Afrl7W::Af4 => 4,
+                    Afrl7W::Af5 => 5,
+                    Afrl7W::Af6 => 6,
+                    Afrl7W::Af7 => 7,
+                    Afrl7W::Af8 => 8,
+                    Afrl7W::Af9 => 9,
+                    Afrl7W::Af10 => 10,
+                    Afrl7W::Af11 => 11,
+                    Afrl7W::Af12 => 12,
+                    Afrl7W::Af13 => 13,
+                    Afrl7W::Af14 => 14,
+                    Afrl7W::Af15 => 15,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl7W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL6`" ]
+        pub type Afrl6W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl6W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL5`" ]
+        pub type Afrl5W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl5W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL4`" ]
+        pub type Afrl4W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl4W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL3`" ]
+        pub type Afrl3W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl3W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL2`" ]
+        pub type Afrl2W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL1`" ]
+        pub type Afrl1W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl1W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRL0`" ]
+        pub type Afrl0W = Afrl7W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrl0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrl0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrl0W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrl7W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrl7W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrl7W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrl7W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrl7W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrl7W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrl7W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrl7W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrl7W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrl7W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrl7W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrl7W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrl7W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrl7W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrl7W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrl7W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&self) -> Afrl7R {
+                Afrl7R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 28;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&self) -> Afrl6R {
+                Afrl6R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 24;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&self) -> Afrl5R {
+                Afrl5R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 20;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&self) -> Afrl4R {
+                Afrl4R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&self) -> Afrl3R {
+                Afrl3R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&self) -> Afrl2R {
+                Afrl2R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&self) -> Afrl1R {
+                Afrl1R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&self) -> Afrl0R {
+                Afrl0R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl7(&mut self) -> _Afrl7W {
+                _Afrl7W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl6(&mut self) -> _Afrl6W {
+                _Afrl6W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl5(&mut self) -> _Afrl5W {
+                _Afrl5W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl4(&mut self) -> _Afrl4W {
+                _Afrl4W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl3(&mut self) -> _Afrl3W {
+                _Afrl3W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl2(&mut self) -> _Afrl2W {
+                _Afrl2W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl1(&mut self) -> _Afrl1W {
+                _Afrl1W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 0..7)" ]
+            # [ inline ( always ) ]
+            pub fn afrl0(&mut self) -> _Afrl0W {
+                _Afrl0W { w: self }
+            }
+        }
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub struct Afrh {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "GPIO alternate function high register" ]
+    pub mod afrh {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Afrh {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `AFRH15`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Afrh15R {
+            # [ doc = "0000: AF0" ]
+            Af0,
+            # [ doc = "0001: AF1" ]
+            Af1,
+            # [ doc = "0010: AF2" ]
+            Af2,
+            # [ doc = "0011: AF3" ]
+            Af3,
+            # [ doc = "0100: AF4" ]
+            Af4,
+            # [ doc = "0101: AF5" ]
+            Af5,
+            # [ doc = "0110: AF6" ]
+            Af6,
+            # [ doc = "0111: AF7" ]
+            Af7,
+            # [ doc = "1000: AF8" ]
+            Af8,
+            # [ doc = "1001: AF9" ]
+            Af9,
+            # [ doc = "1010: AF10" ]
+            Af10,
+            # [ doc = "1011: AF11" ]
+            Af11,
+            # [ doc = "1100: AF12" ]
+            Af12,
+            # [ doc = "1101: AF13" ]
+            Af13,
+            # [ doc = "1110: AF14" ]
+            Af14,
+            # [ doc = "1111: AF15" ]
+            Af15,
+        }
+        impl Afrh15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Afrh15R::Af0 => 0,
+                    Afrh15R::Af1 => 1,
+                    Afrh15R::Af2 => 2,
+                    Afrh15R::Af3 => 3,
+                    Afrh15R::Af4 => 4,
+                    Afrh15R::Af5 => 5,
+                    Afrh15R::Af6 => 6,
+                    Afrh15R::Af7 => 7,
+                    Afrh15R::Af8 => 8,
+                    Afrh15R::Af9 => 9,
+                    Afrh15R::Af10 => 10,
+                    Afrh15R::Af11 => 11,
+                    Afrh15R::Af12 => 12,
+                    Afrh15R::Af13 => 13,
+                    Afrh15R::Af14 => 14,
+                    Afrh15R::Af15 => 15,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Afrh15R {
+                match bits {
+                    0 => Afrh15R::Af0,
+                    1 => Afrh15R::Af1,
+                    2 => Afrh15R::Af2,
+                    3 => Afrh15R::Af3,
+                    4 => Afrh15R::Af4,
+                    5 => Afrh15R::Af5,
+                    6 => Afrh15R::Af6,
+                    7 => Afrh15R::Af7,
+                    8 => Afrh15R::Af8,
+                    9 => Afrh15R::Af9,
+                    10 => Afrh15R::Af10,
+                    11 => Afrh15R::Af11,
+                    12 => Afrh15R::Af12,
+                    13 => Afrh15R::Af13,
+                    14 => Afrh15R::Af14,
+                    15 => Afrh15R::Af15,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `Af0`" ]
+            # [ inline ( always ) ]
+            pub fn is_af0(&self) -> bool {
+                *self == Afrh15R::Af0
+            }
+            # [ doc = "Checks if the value of the field is `Af1`" ]
+            # [ inline ( always ) ]
+            pub fn is_af1(&self) -> bool {
+                *self == Afrh15R::Af1
+            }
+            # [ doc = "Checks if the value of the field is `Af2`" ]
+            # [ inline ( always ) ]
+            pub fn is_af2(&self) -> bool {
+                *self == Afrh15R::Af2
+            }
+            # [ doc = "Checks if the value of the field is `Af3`" ]
+            # [ inline ( always ) ]
+            pub fn is_af3(&self) -> bool {
+                *self == Afrh15R::Af3
+            }
+            # [ doc = "Checks if the value of the field is `Af4`" ]
+            # [ inline ( always ) ]
+            pub fn is_af4(&self) -> bool {
+                *self == Afrh15R::Af4
+            }
+            # [ doc = "Checks if the value of the field is `Af5`" ]
+            # [ inline ( always ) ]
+            pub fn is_af5(&self) -> bool {
+                *self == Afrh15R::Af5
+            }
+            # [ doc = "Checks if the value of the field is `Af6`" ]
+            # [ inline ( always ) ]
+            pub fn is_af6(&self) -> bool {
+                *self == Afrh15R::Af6
+            }
+            # [ doc = "Checks if the value of the field is `Af7`" ]
+            # [ inline ( always ) ]
+            pub fn is_af7(&self) -> bool {
+                *self == Afrh15R::Af7
+            }
+            # [ doc = "Checks if the value of the field is `Af8`" ]
+            # [ inline ( always ) ]
+            pub fn is_af8(&self) -> bool {
+                *self == Afrh15R::Af8
+            }
+            # [ doc = "Checks if the value of the field is `Af9`" ]
+            # [ inline ( always ) ]
+            pub fn is_af9(&self) -> bool {
+                *self == Afrh15R::Af9
+            }
+            # [ doc = "Checks if the value of the field is `Af10`" ]
+            # [ inline ( always ) ]
+            pub fn is_af10(&self) -> bool {
+                *self == Afrh15R::Af10
+            }
+            # [ doc = "Checks if the value of the field is `Af11`" ]
+            # [ inline ( always ) ]
+            pub fn is_af11(&self) -> bool {
+                *self == Afrh15R::Af11
+            }
+            # [ doc = "Checks if the value of the field is `Af12`" ]
+            # [ inline ( always ) ]
+            pub fn is_af12(&self) -> bool {
+                *self == Afrh15R::Af12
+            }
+            # [ doc = "Checks if the value of the field is `Af13`" ]
+            # [ inline ( always ) ]
+            pub fn is_af13(&self) -> bool {
+                *self == Afrh15R::Af13
+            }
+            # [ doc = "Checks if the value of the field is `Af14`" ]
+            # [ inline ( always ) ]
+            pub fn is_af14(&self) -> bool {
+                *self == Afrh15R::Af14
+            }
+            # [ doc = "Checks if the value of the field is `Af15`" ]
+            # [ inline ( always ) ]
+            pub fn is_af15(&self) -> bool {
+                *self == Afrh15R::Af15
+            }
+        }
+        # [ doc = "Possible values of the field `AFRH14`" ]
+        pub type Afrh14R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH13`" ]
+        pub type Afrh13R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH12`" ]
+        pub type Afrh12R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH11`" ]
+        pub type Afrh11R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH10`" ]
+        pub type Afrh10R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH9`" ]
+        pub type Afrh9R = Afrh15R;
+        # [ doc = "Possible values of the field `AFRH8`" ]
+        pub type Afrh8R = Afrh15R;
+        # [ doc = "Values that can be written to the field `AFRH15`" ]
+        pub enum Afrh15W {
+            # [ doc = "0000: AF0" ]
+            Af0,
+            # [ doc = "0001: AF1" ]
+            Af1,
+            # [ doc = "0010: AF2" ]
+            Af2,
+            # [ doc = "0011: AF3" ]
+            Af3,
+            # [ doc = "0100: AF4" ]
+            Af4,
+            # [ doc = "0101: AF5" ]
+            Af5,
+            # [ doc = "0110: AF6" ]
+            Af6,
+            # [ doc = "0111: AF7" ]
+            Af7,
+            # [ doc = "1000: AF8" ]
+            Af8,
+            # [ doc = "1001: AF9" ]
+            Af9,
+            # [ doc = "1010: AF10" ]
+            Af10,
+            # [ doc = "1011: AF11" ]
+            Af11,
+            # [ doc = "1100: AF12" ]
+            Af12,
+            # [ doc = "1101: AF13" ]
+            Af13,
+            # [ doc = "1110: AF14" ]
+            Af14,
+            # [ doc = "1111: AF15" ]
+            Af15,
+        }
+        impl Afrh15W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Afrh15W::Af0 => 0,
+                    Afrh15W::Af1 => 1,
+                    Afrh15W::Af2 => 2,
+                    Afrh15W::Af3 => 3,
+                    Afrh15W::Af4 => 4,
+                    Afrh15W::Af5 => 5,
+                    Afrh15W::Af6 => 6,
+                    Afrh15W::Af7 => 7,
+                    Afrh15W::Af8 => 8,
+                    Afrh15W::Af9 => 9,
+                    Afrh15W::Af10 => 10,
+                    Afrh15W::Af11 => 11,
+                    Afrh15W::Af12 => 12,
+                    Afrh15W::Af13 => 13,
+                    Afrh15W::Af14 => 14,
+                    Afrh15W::Af15 => 15,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh15W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH14`" ]
+        pub type Afrh14W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh14W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH13`" ]
+        pub type Afrh13W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh13W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH12`" ]
+        pub type Afrh12W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh12W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH11`" ]
+        pub type Afrh11W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh11W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH10`" ]
+        pub type Afrh10W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh10W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH9`" ]
+        pub type Afrh9W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh9W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `AFRH8`" ]
+        pub type Afrh8W = Afrh15W;
+        # [ doc = r" Proxy" ]
+        pub struct _Afrh8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Afrh8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Afrh8W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0000: AF0" ]
+            # [ inline ( always ) ]
+            pub fn af0(self) -> &'a mut W {
+                self.variant(Afrh15W::Af0)
+            }
+            # [ doc = "0001: AF1" ]
+            # [ inline ( always ) ]
+            pub fn af1(self) -> &'a mut W {
+                self.variant(Afrh15W::Af1)
+            }
+            # [ doc = "0010: AF2" ]
+            # [ inline ( always ) ]
+            pub fn af2(self) -> &'a mut W {
+                self.variant(Afrh15W::Af2)
+            }
+            # [ doc = "0011: AF3" ]
+            # [ inline ( always ) ]
+            pub fn af3(self) -> &'a mut W {
+                self.variant(Afrh15W::Af3)
+            }
+            # [ doc = "0100: AF4" ]
+            # [ inline ( always ) ]
+            pub fn af4(self) -> &'a mut W {
+                self.variant(Afrh15W::Af4)
+            }
+            # [ doc = "0101: AF5" ]
+            # [ inline ( always ) ]
+            pub fn af5(self) -> &'a mut W {
+                self.variant(Afrh15W::Af5)
+            }
+            # [ doc = "0110: AF6" ]
+            # [ inline ( always ) ]
+            pub fn af6(self) -> &'a mut W {
+                self.variant(Afrh15W::Af6)
+            }
+            # [ doc = "0111: AF7" ]
+            # [ inline ( always ) ]
+            pub fn af7(self) -> &'a mut W {
+                self.variant(Afrh15W::Af7)
+            }
+            # [ doc = "1000: AF8" ]
+            # [ inline ( always ) ]
+            pub fn af8(self) -> &'a mut W {
+                self.variant(Afrh15W::Af8)
+            }
+            # [ doc = "1001: AF9" ]
+            # [ inline ( always ) ]
+            pub fn af9(self) -> &'a mut W {
+                self.variant(Afrh15W::Af9)
+            }
+            # [ doc = "1010: AF10" ]
+            # [ inline ( always ) ]
+            pub fn af10(self) -> &'a mut W {
+                self.variant(Afrh15W::Af10)
+            }
+            # [ doc = "1011: AF11" ]
+            # [ inline ( always ) ]
+            pub fn af11(self) -> &'a mut W {
+                self.variant(Afrh15W::Af11)
+            }
+            # [ doc = "1100: AF12" ]
+            # [ inline ( always ) ]
+            pub fn af12(self) -> &'a mut W {
+                self.variant(Afrh15W::Af12)
+            }
+            # [ doc = "1101: AF13" ]
+            # [ inline ( always ) ]
+            pub fn af13(self) -> &'a mut W {
+                self.variant(Afrh15W::Af13)
+            }
+            # [ doc = "1110: AF14" ]
+            # [ inline ( always ) ]
+            pub fn af14(self) -> &'a mut W {
+                self.variant(Afrh15W::Af14)
+            }
+            # [ doc = "1111: AF15" ]
+            # [ inline ( always ) ]
+            pub fn af15(self) -> &'a mut W {
+                self.variant(Afrh15W::Af15)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&self) -> Afrh15R {
+                Afrh15R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 28;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&self) -> Afrh14R {
+                Afrh14R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 24;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&self) -> Afrh13R {
+                Afrh13R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 20;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&self) -> Afrh12R {
+                Afrh12R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&self) -> Afrh11R {
+                Afrh11R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&self) -> Afrh10R {
+                Afrh10R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&self) -> Afrh9R {
+                Afrh9R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&self) -> Afrh8R {
+                Afrh8R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 28:31 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh15(&mut self) -> _Afrh15W {
+                _Afrh15W { w: self }
+            }
+            # [ doc = "Bits 24:27 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh14(&mut self) -> _Afrh14W {
+                _Afrh14W { w: self }
+            }
+            # [ doc = "Bits 20:23 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh13(&mut self) -> _Afrh13W {
+                _Afrh13W { w: self }
+            }
+            # [ doc = "Bits 16:19 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh12(&mut self) -> _Afrh12W {
+                _Afrh12W { w: self }
+            }
+            # [ doc = "Bits 12:15 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh11(&mut self) -> _Afrh11W {
+                _Afrh11W { w: self }
+            }
+            # [ doc = "Bits 8:11 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh10(&mut self) -> _Afrh10W {
+                _Afrh10W { w: self }
+            }
+            # [ doc = "Bits 4:7 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh9(&mut self) -> _Afrh9W {
+                _Afrh9W { w: self }
+            }
+            # [ doc = "Bits 0:3 - Alternate function selection for port x bit y (y = 8..15)" ]
+            # [ inline ( always ) ]
+            pub fn afrh8(&mut self) -> _Afrh8W {
+                _Afrh8W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose I/Os" ]
+pub struct Gpioa {
+    register_block: gpioa::RegisterBlock,
+}
+impl Deref for Gpioa {
+    type Target = gpioa::RegisterBlock;
+    fn deref(&self) -> &gpioa::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "System configuration controller" ]
+pub const SYSCFG: Peripheral<Syscfg> = unsafe { Peripheral::new(1073821696) };
+# [ doc = "System configuration controller" ]
+pub mod syscfg {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - memory remap register" ]
+        pub memrm: Memrm,
+        # [ doc = "0x04 - peripheral mode configuration register" ]
+        pub pmc: Pmc,
+        # [ doc = "0x08 - external interrupt configuration register 1" ]
+        pub exticr1: Exticr1,
+        # [ doc = "0x0c - external interrupt configuration register 2" ]
+        pub exticr2: Exticr2,
+        # [ doc = "0x10 - external interrupt configuration register 3" ]
+        pub exticr3: Exticr3,
+        # [ doc = "0x14 - external interrupt configuration register 4" ]
+        pub exticr4: Exticr4,
+        _reserved0: [u8; 8usize],
+        # [ doc = "0x20 - Compensation cell control register" ]
+        pub cmpcr: Cmpcr,
+    }
+    # [ doc = "memory remap register" ]
+    pub struct Memrm {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "memory remap register" ]
+    pub mod memrm {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Memrm {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `MEM_MODE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum MemModeR {
+            # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ]
+            MainFlash,
+            # [ doc = "01: System Flash memory mapped at 0x0000 0000" ]
+            SystemFlash,
+            # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ]
+            EmbeddedSram,
+            # [ doc = r" Reserved" ]
+            _Reserved(u8),
+        }
+        impl MemModeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    MemModeR::MainFlash => 0,
+                    MemModeR::SystemFlash => 1,
+                    MemModeR::EmbeddedSram => 3,
+                    MemModeR::_Reserved(bits) => bits,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> MemModeR {
+                match bits {
+                    0 => MemModeR::MainFlash,
+                    1 => MemModeR::SystemFlash,
+                    3 => MemModeR::EmbeddedSram,
+                    i => MemModeR::_Reserved(i),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `MainFlash`" ]
+            # [ inline ( always ) ]
+            pub fn is_main_flash(&self) -> bool {
+                *self == MemModeR::MainFlash
+            }
+            # [ doc = "Checks if the value of the field is `SystemFlash`" ]
+            # [ inline ( always ) ]
+            pub fn is_system_flash(&self) -> bool {
+                *self == MemModeR::SystemFlash
+            }
+            # [ doc = "Checks if the value of the field is `EmbeddedSram`" ]
+            # [ inline ( always ) ]
+            pub fn is_embedded_sram(&self) -> bool {
+                *self == MemModeR::EmbeddedSram
+            }
+        }
+        # [ doc = "Values that can be written to the field `MEM_MODE`" ]
+        pub enum MemModeW {
+            # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ]
+            MainFlash,
+            # [ doc = "01: System Flash memory mapped at 0x0000 0000" ]
+            SystemFlash,
+            # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ]
+            EmbeddedSram,
+        }
+        impl MemModeW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    MemModeW::MainFlash => 0,
+                    MemModeW::SystemFlash => 1,
+                    MemModeW::EmbeddedSram => 3,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MemModeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MemModeW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: MemModeW) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "00: Main Flash memory mapped at 0x0000 0000" ]
+            # [ inline ( always ) ]
+            pub fn main_flash(self) -> &'a mut W {
+                self.variant(MemModeW::MainFlash)
+            }
+            # [ doc = "01: System Flash memory mapped at 0x0000 0000" ]
+            # [ inline ( always ) ]
+            pub fn system_flash(self) -> &'a mut W {
+                self.variant(MemModeW::SystemFlash)
+            }
+            # [ doc = "11: Embedded SRAM mapped at 0x0000 0000" ]
+            # [ inline ( always ) ]
+            pub fn embedded_sram(self) -> &'a mut W {
+                self.variant(MemModeW::EmbeddedSram)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - MEM_MODE" ]
+            # [ inline ( always ) ]
+            pub fn mem_mode(&self) -> MemModeR {
+                MemModeR::_from(
+                    {
+                        const MASK: u8 = 3;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - MEM_MODE" ]
+            # [ inline ( always ) ]
+            pub fn mem_mode(&mut self) -> _MemModeW {
+                _MemModeW { w: self }
+            }
+        }
+    }
+    # [ doc = "peripheral mode configuration register" ]
+    pub struct Pmc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "peripheral mode configuration register" ]
+    pub mod pmc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pmc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MiiRmiiSelR {
+            bits: u8,
+        }
+        impl MiiRmiiSelR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = "Possible values of the field `ADC1DC2`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Adc1dc2R {
+            # [ doc = "0: No effect" ]
+            MainFlash,
+            # [ doc = "1: Refer to AN4073 on how to use this bit.\nNote: These bits can be set only if the following conditions are met:\n- ADC clock higher or equal to 30 MHz.\n- Only one ADCxDC2 bit must be selected if ADC conversions do not start\nat the same time and the sampling times differ.\n- These bits must not be set when the ADCDC1 bit is set in PWR_CR\nregister." ]
+            SystemFlash,
+        }
+        impl Adc1dc2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Adc1dc2R::MainFlash => 0,
+                    Adc1dc2R::SystemFlash => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Adc1dc2R {
+                match bits {
+                    0 => Adc1dc2R::MainFlash,
+                    1 => Adc1dc2R::SystemFlash,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `MainFlash`" ]
+            # [ inline ( always ) ]
+            pub fn is_main_flash(&self) -> bool {
+                *self == Adc1dc2R::MainFlash
+            }
+            # [ doc = "Checks if the value of the field is `SystemFlash`" ]
+            # [ inline ( always ) ]
+            pub fn is_system_flash(&self) -> bool {
+                *self == Adc1dc2R::SystemFlash
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MiiRmiiSelW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MiiRmiiSelW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `ADC1DC2`" ]
+        pub enum Adc1dc2W {
+            # [ doc = "0: No effect" ]
+            MainFlash,
+            # [ doc = "1: Refer to AN4073 on how to use this bit.\nNote: These bits can be set only if the following conditions are met:\n- ADC clock higher or equal to 30 MHz.\n- Only one ADCxDC2 bit must be selected if ADC conversions do not start\nat the same time and the sampling times differ.\n- These bits must not be set when the ADCDC1 bit is set in PWR_CR\nregister." ]
+            SystemFlash,
+        }
+        impl Adc1dc2W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Adc1dc2W::MainFlash => 0,
+                    Adc1dc2W::SystemFlash => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Adc1dc2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Adc1dc2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Adc1dc2W) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No effect" ]
+            # [ inline ( always ) ]
+            pub fn main_flash(self) -> &'a mut W {
+                self.variant(Adc1dc2W::MainFlash)
+            }
+            # [ doc = "1: Refer to AN4073 on how to use this bit. Note: These bits can be set only if the following conditions are met: - ADC clock higher or equal to 30 MHz. - Only one ADCxDC2 bit must be selected if ADC conversions do not start at the same time and the sampling times differ. - These bits must not be set when the ADCDC1 bit is set in PWR_CR register." ]
+            # [ inline ( always ) ]
+            pub fn system_flash(self) -> &'a mut W {
+                self.variant(Adc1dc2W::SystemFlash)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - Ethernet PHY interface selection" ]
+            # [ inline ( always ) ]
+            pub fn mii_rmii_sel(&self) -> MiiRmiiSelR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MiiRmiiSelR { bits }
+            }
+            # [ doc = "Bit 16 - ADC1DC2" ]
+            # [ inline ( always ) ]
+            pub fn adc1dc2(&self) -> Adc1dc2R {
+                Adc1dc2R::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 16;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - Ethernet PHY interface selection" ]
+            # [ inline ( always ) ]
+            pub fn mii_rmii_sel(&mut self) -> _MiiRmiiSelW {
+                _MiiRmiiSelW { w: self }
+            }
+            # [ doc = "Bit 16 - ADC1DC2" ]
+            # [ inline ( always ) ]
+            pub fn adc1dc2(&mut self) -> _Adc1dc2W {
+                _Adc1dc2W { w: self }
+            }
+        }
+    }
+    # [ doc = "external interrupt configuration register 1" ]
+    pub struct Exticr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "external interrupt configuration register 1" ]
+    pub mod exticr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Exticr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `EXTI3`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum Exti3R {
+            # [ doc = "0000: PA[x] pin" ]
+            PaX,
+            # [ doc = "0001: PB[x] pin" ]
+            PbX,
+            # [ doc = "0010: PC[x] pin" ]
+            PcX,
+            # [ doc = "0011: PD[x] pin" ]
+            PdX,
+            # [ doc = "0100: PE[x] pin" ]
+            PeX,
+            # [ doc = "0111: PH[x] pin" ]
+            PhX,
+            # [ doc = r" Reserved" ]
+            _Reserved(u8),
+        }
+        impl Exti3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    Exti3R::PaX => 0,
+                    Exti3R::PbX => 1,
+                    Exti3R::PcX => 2,
+                    Exti3R::PdX => 3,
+                    Exti3R::PeX => 4,
+                    Exti3R::PhX => 7,
+                    Exti3R::_Reserved(bits) => bits,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> Exti3R {
+                match bits {
+                    0 => Exti3R::PaX,
+                    1 => Exti3R::PbX,
+                    2 => Exti3R::PcX,
+                    3 => Exti3R::PdX,
+                    4 => Exti3R::PeX,
+                    7 => Exti3R::PhX,
+                    i => Exti3R::_Reserved(i),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `PaX`" ]
+            # [ inline ( always ) ]
+            pub fn is_pa_x(&self) -> bool {
+                *self == Exti3R::PaX
+            }
+            # [ doc = "Checks if the value of the field is `PbX`" ]
+            # [ inline ( always ) ]
+            pub fn is_pb_x(&self) -> bool {
+                *self == Exti3R::PbX
+            }
+            # [ doc = "Checks if the value of the field is `PcX`" ]
+            # [ inline ( always ) ]
+            pub fn is_pc_x(&self) -> bool {
+                *self == Exti3R::PcX
+            }
+            # [ doc = "Checks if the value of the field is `PdX`" ]
+            # [ inline ( always ) ]
+            pub fn is_pd_x(&self) -> bool {
+                *self == Exti3R::PdX
+            }
+            # [ doc = "Checks if the value of the field is `PeX`" ]
+            # [ inline ( always ) ]
+            pub fn is_pe_x(&self) -> bool {
+                *self == Exti3R::PeX
+            }
+            # [ doc = "Checks if the value of the field is `PhX`" ]
+            # [ inline ( always ) ]
+            pub fn is_ph_x(&self) -> bool {
+                *self == Exti3R::PhX
+            }
+        }
+        # [ doc = "Possible values of the field `EXTI2`" ]
+        pub type Exti2R = Exti3R;
+        # [ doc = "Possible values of the field `EXTI1`" ]
+        pub type Exti1R = Exti3R;
+        # [ doc = "Possible values of the field `EXTI0`" ]
+        pub type Exti0R = Exti3R;
+        # [ doc = "Values that can be written to the field `EXTI3`" ]
+        pub enum Exti3W {
+            # [ doc = "0000: PA[x] pin" ]
+            PaX,
+            # [ doc = "0001: PB[x] pin" ]
+            PbX,
+            # [ doc = "0010: PC[x] pin" ]
+            PcX,
+            # [ doc = "0011: PD[x] pin" ]
+            PdX,
+            # [ doc = "0100: PE[x] pin" ]
+            PeX,
+            # [ doc = "0111: PH[x] pin" ]
+            PhX,
+        }
+        impl Exti3W {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    Exti3W::PaX => 0,
+                    Exti3W::PbX => 1,
+                    Exti3W::PcX => 2,
+                    Exti3W::PdX => 3,
+                    Exti3W::PeX => 4,
+                    Exti3W::PhX => 7,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Exti3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti3W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti3W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI2`" ]
+        pub type Exti2W = Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti2W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti2W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI1`" ]
+        pub type Exti1W = Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti1W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti1W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI0`" ]
+        pub type Exti0W = Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti0W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti0W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti3(&self) -> Exti3R {
+                Exti3R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti2(&self) -> Exti2R {
+                Exti2R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti1(&self) -> Exti1R {
+                Exti1R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti0(&self) -> Exti0R {
+                Exti0R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti3(&mut self) -> _Exti3W {
+                _Exti3W { w: self }
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti2(&mut self) -> _Exti2W {
+                _Exti2W { w: self }
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti1(&mut self) -> _Exti1W {
+                _Exti1W { w: self }
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 0 to 3)" ]
+            # [ inline ( always ) ]
+            pub fn exti0(&mut self) -> _Exti0W {
+                _Exti0W { w: self }
+            }
+        }
+    }
+    # [ doc = "external interrupt configuration register 2" ]
+    pub struct Exticr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "external interrupt configuration register 2" ]
+    pub mod exticr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Exticr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `EXTI7`" ]
+        pub type Exti7R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI6`" ]
+        pub type Exti6R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI5`" ]
+        pub type Exti5R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI4`" ]
+        pub type Exti4R = super::exticr1::Exti3R;
+        # [ doc = "Values that can be written to the field `EXTI7`" ]
+        pub type Exti7W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti7W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti7W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI6`" ]
+        pub type Exti6W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti6W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti6W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI5`" ]
+        pub type Exti5W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti5W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti5W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI4`" ]
+        pub type Exti4W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti4W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti4W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti7(&self) -> Exti7R {
+                Exti7R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti6(&self) -> Exti6R {
+                Exti6R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti5(&self) -> Exti5R {
+                Exti5R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti4(&self) -> Exti4R {
+                Exti4R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti7(&mut self) -> _Exti7W {
+                _Exti7W { w: self }
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti6(&mut self) -> _Exti6W {
+                _Exti6W { w: self }
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti5(&mut self) -> _Exti5W {
+                _Exti5W { w: self }
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 4 to 7)" ]
+            # [ inline ( always ) ]
+            pub fn exti4(&mut self) -> _Exti4W {
+                _Exti4W { w: self }
+            }
+        }
+    }
+    # [ doc = "external interrupt configuration register 3" ]
+    pub struct Exticr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "external interrupt configuration register 3" ]
+    pub mod exticr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Exticr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `EXTI11`" ]
+        pub type Exti11R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI10`" ]
+        pub type Exti10R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI9`" ]
+        pub type Exti9R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI8`" ]
+        pub type Exti8R = super::exticr1::Exti3R;
+        # [ doc = "Values that can be written to the field `EXTI11`" ]
+        pub type Exti11W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti11W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti11W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI10`" ]
+        pub type Exti10W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti10W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti10W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI9`" ]
+        pub type Exti9W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti9W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti9W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI8`" ]
+        pub type Exti8W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti8W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti8W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti11(&self) -> Exti11R {
+                Exti11R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - EXTI10" ]
+            # [ inline ( always ) ]
+            pub fn exti10(&self) -> Exti10R {
+                Exti10R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti9(&self) -> Exti9R {
+                Exti9R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti8(&self) -> Exti8R {
+                Exti8R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti11(&mut self) -> _Exti11W {
+                _Exti11W { w: self }
+            }
+            # [ doc = "Bits 8:11 - EXTI10" ]
+            # [ inline ( always ) ]
+            pub fn exti10(&mut self) -> _Exti10W {
+                _Exti10W { w: self }
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti9(&mut self) -> _Exti9W {
+                _Exti9W { w: self }
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 8 to 11)" ]
+            # [ inline ( always ) ]
+            pub fn exti8(&mut self) -> _Exti8W {
+                _Exti8W { w: self }
+            }
+        }
+    }
+    # [ doc = "external interrupt configuration register 4" ]
+    pub struct Exticr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "external interrupt configuration register 4" ]
+    pub mod exticr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Exticr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `EXTI15`" ]
+        pub type Exti15R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI14`" ]
+        pub type Exti14R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI13`" ]
+        pub type Exti13R = super::exticr1::Exti3R;
+        # [ doc = "Possible values of the field `EXTI12`" ]
+        pub type Exti12R = super::exticr1::Exti3R;
+        # [ doc = "Values that can be written to the field `EXTI15`" ]
+        pub type Exti15W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti15W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti15W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI14`" ]
+        pub type Exti14W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti14W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti14W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI13`" ]
+        pub type Exti13W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti13W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti13W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `EXTI12`" ]
+        pub type Exti12W = super::exticr1::Exti3W;
+        # [ doc = r" Proxy" ]
+        pub struct _Exti12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Exti12W<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: Exti12W) -> &'a mut W {
+                unsafe { self.bits(variant._bits()) }
+            }
+            # [ doc = "0000: PA[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pa_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PaX)
+            }
+            # [ doc = "0001: PB[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pb_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PbX)
+            }
+            # [ doc = "0010: PC[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pc_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PcX)
+            }
+            # [ doc = "0011: PD[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pd_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PdX)
+            }
+            # [ doc = "0100: PE[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn pe_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PeX)
+            }
+            # [ doc = "0111: PH[x] pin" ]
+            # [ inline ( always ) ]
+            pub fn ph_x(self) -> &'a mut W {
+                self.variant(super::exticr1::Exti3W::PhX)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti15(&self) -> Exti15R {
+                Exti15R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 12;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti14(&self) -> Exti14R {
+                Exti14R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti13(&self) -> Exti13R {
+                Exti13R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti12(&self) -> Exti12R {
+                Exti12R::_from(
+                    {
+                        const MASK: u8 = 15;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti15(&mut self) -> _Exti15W {
+                _Exti15W { w: self }
+            }
+            # [ doc = "Bits 8:11 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti14(&mut self) -> _Exti14W {
+                _Exti14W { w: self }
+            }
+            # [ doc = "Bits 4:7 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti13(&mut self) -> _Exti13W {
+                _Exti13W { w: self }
+            }
+            # [ doc = "Bits 0:3 - EXTI x configuration (x = 12 to 15)" ]
+            # [ inline ( always ) ]
+            pub fn exti12(&mut self) -> _Exti12W {
+                _Exti12W { w: self }
+            }
+        }
+    }
+    # [ doc = "Compensation cell control register" ]
+    pub struct Cmpcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Compensation cell control register" ]
+    pub mod cmpcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Cmpcr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = "Possible values of the field `READY`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum ReadyR {
+            # [ doc = "0: I/O compensation cell not ready" ]
+            IoCompensationCellNotReady,
+            # [ doc = "1: O compensation cell ready" ]
+            OCompensationCellReady,
+        }
+        impl ReadyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    ReadyR::IoCompensationCellNotReady => 0,
+                    ReadyR::OCompensationCellReady => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> ReadyR {
+                match bits {
+                    0 => ReadyR::IoCompensationCellNotReady,
+                    1 => ReadyR::OCompensationCellReady,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `IoCompensationCellNotReady`" ]
+            # [ inline ( always ) ]
+            pub fn is_io_compensation_cell_not_ready(&self) -> bool {
+                *self == ReadyR::IoCompensationCellNotReady
+            }
+            # [ doc = "Checks if the value of the field is `OCompensationCellReady`" ]
+            # [ inline ( always ) ]
+            pub fn is_o_compensation_cell_ready(&self) -> bool {
+                *self == ReadyR::OCompensationCellReady
+            }
+        }
+        # [ doc = "Possible values of the field `CMP_PD`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum CmpPdR {
+            # [ doc = "0: I/O compensation cell power-down mode" ]
+            IoCompensationCellPowerDownMode,
+            # [ doc = "1: I/O compensation cell enabled" ]
+            IoCompensationCellEnabled,
+        }
+        impl CmpPdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    CmpPdR::IoCompensationCellPowerDownMode => 0,
+                    CmpPdR::IoCompensationCellEnabled => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> CmpPdR {
+                match bits {
+                    0 => CmpPdR::IoCompensationCellPowerDownMode,
+                    1 => CmpPdR::IoCompensationCellEnabled,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `IoCompensationCellPowerDownMode`" ]
+            # [ inline ( always ) ]
+            pub fn is_io_compensation_cell_power_down_mode(&self) -> bool {
+                *self == CmpPdR::IoCompensationCellPowerDownMode
+            }
+            # [ doc = "Checks if the value of the field is `IoCompensationCellEnabled`" ]
+            # [ inline ( always ) ]
+            pub fn is_io_compensation_cell_enabled(&self) -> bool {
+                *self == CmpPdR::IoCompensationCellEnabled
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 8 - READY" ]
+            # [ inline ( always ) ]
+            pub fn ready(&self) -> ReadyR {
+                ReadyR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 0 - Compensation cell power-down" ]
+            # [ inline ( always ) ]
+            pub fn cmp_pd(&self) -> CmpPdR {
+                CmpPdR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+    }
+}
+# [ doc = "System configuration controller" ]
+pub struct Syscfg {
+    register_block: syscfg::RegisterBlock,
+}
+impl Deref for Syscfg {
+    type Target = syscfg::RegisterBlock;
+    fn deref(&self) -> &syscfg::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Serial peripheral interface" ]
+pub const SPI1: Peripheral<Spi1> = unsafe { Peripheral::new(1073819648) };
+# [ doc = "Serial peripheral interface" ]
+pub mod spi1 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x0c - data register" ]
+        pub dr: Dr,
+        # [ doc = "0x10 - CRC polynomial register" ]
+        pub crcpr: Crcpr,
+        # [ doc = "0x14 - RX CRC register" ]
+        pub rxcrcr: Rxcrcr,
+        # [ doc = "0x18 - TX CRC register" ]
+        pub txcrcr: Txcrcr,
+        # [ doc = "0x1c - I2S configuration register" ]
+        pub i2scfgr: I2scfgr,
+        # [ doc = "0x20 - I2S prescaler register" ]
+        pub i2spr: I2spr,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BidimodeR {
+            bits: u8,
+        }
+        impl BidimodeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BidioeR {
+            bits: u8,
+        }
+        impl BidioeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcenR {
+            bits: u8,
+        }
+        impl CrcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcnextR {
+            bits: u8,
+        }
+        impl CrcnextR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DffR {
+            bits: u8,
+        }
+        impl DffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxonlyR {
+            bits: u8,
+        }
+        impl RxonlyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsmR {
+            bits: u8,
+        }
+        impl SsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsiR {
+            bits: u8,
+        }
+        impl SsiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsbfirstR {
+            bits: u8,
+        }
+        impl LsbfirstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SpeR {
+            bits: u8,
+        }
+        impl SpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BrR {
+            bits: u8,
+        }
+        impl BrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MstrR {
+            bits: u8,
+        }
+        impl MstrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CpolR {
+            bits: u8,
+        }
+        impl CpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CphaR {
+            bits: u8,
+        }
+        impl CphaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BidimodeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BidimodeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BidioeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BidioeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcnextW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcnextW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DffW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DffW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxonlyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxonlyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SsiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SsiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsbfirstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsbfirstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MstrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MstrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CphaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CphaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Bidirectional data mode enable" ]
+            # [ inline ( always ) ]
+            pub fn bidimode(&self) -> BidimodeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BidimodeR { bits }
+            }
+            # [ doc = "Bit 14 - Output enable in bidirectional mode" ]
+            # [ inline ( always ) ]
+            pub fn bidioe(&self) -> BidioeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BidioeR { bits }
+            }
+            # [ doc = "Bit 13 - Hardware CRC calculation enable" ]
+            # [ inline ( always ) ]
+            pub fn crcen(&self) -> CrcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrcenR { bits }
+            }
+            # [ doc = "Bit 12 - CRC transfer next" ]
+            # [ inline ( always ) ]
+            pub fn crcnext(&self) -> CrcnextR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrcnextR { bits }
+            }
+            # [ doc = "Bit 11 - Data frame format" ]
+            # [ inline ( always ) ]
+            pub fn dff(&self) -> DffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DffR { bits }
+            }
+            # [ doc = "Bit 10 - Receive only" ]
+            # [ inline ( always ) ]
+            pub fn rxonly(&self) -> RxonlyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxonlyR { bits }
+            }
+            # [ doc = "Bit 9 - Software slave management" ]
+            # [ inline ( always ) ]
+            pub fn ssm(&self) -> SsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SsmR { bits }
+            }
+            # [ doc = "Bit 8 - Internal slave select" ]
+            # [ inline ( always ) ]
+            pub fn ssi(&self) -> SsiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SsiR { bits }
+            }
+            # [ doc = "Bit 7 - Frame format" ]
+            # [ inline ( always ) ]
+            pub fn lsbfirst(&self) -> LsbfirstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsbfirstR { bits }
+            }
+            # [ doc = "Bit 6 - SPI enable" ]
+            # [ inline ( always ) ]
+            pub fn spe(&self) -> SpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SpeR { bits }
+            }
+            # [ doc = "Bits 3:5 - Baud rate control" ]
+            # [ inline ( always ) ]
+            pub fn br(&self) -> BrR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BrR { bits }
+            }
+            # [ doc = "Bit 2 - Master selection" ]
+            # [ inline ( always ) ]
+            pub fn mstr(&self) -> MstrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MstrR { bits }
+            }
+            # [ doc = "Bit 1 - Clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn cpol(&self) -> CpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CpolR { bits }
+            }
+            # [ doc = "Bit 0 - Clock phase" ]
+            # [ inline ( always ) ]
+            pub fn cpha(&self) -> CphaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CphaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Bidirectional data mode enable" ]
+            # [ inline ( always ) ]
+            pub fn bidimode(&mut self) -> _BidimodeW {
+                _BidimodeW { w: self }
+            }
+            # [ doc = "Bit 14 - Output enable in bidirectional mode" ]
+            # [ inline ( always ) ]
+            pub fn bidioe(&mut self) -> _BidioeW {
+                _BidioeW { w: self }
+            }
+            # [ doc = "Bit 13 - Hardware CRC calculation enable" ]
+            # [ inline ( always ) ]
+            pub fn crcen(&mut self) -> _CrcenW {
+                _CrcenW { w: self }
+            }
+            # [ doc = "Bit 12 - CRC transfer next" ]
+            # [ inline ( always ) ]
+            pub fn crcnext(&mut self) -> _CrcnextW {
+                _CrcnextW { w: self }
+            }
+            # [ doc = "Bit 11 - Data frame format" ]
+            # [ inline ( always ) ]
+            pub fn dff(&mut self) -> _DffW {
+                _DffW { w: self }
+            }
+            # [ doc = "Bit 10 - Receive only" ]
+            # [ inline ( always ) ]
+            pub fn rxonly(&mut self) -> _RxonlyW {
+                _RxonlyW { w: self }
+            }
+            # [ doc = "Bit 9 - Software slave management" ]
+            # [ inline ( always ) ]
+            pub fn ssm(&mut self) -> _SsmW {
+                _SsmW { w: self }
+            }
+            # [ doc = "Bit 8 - Internal slave select" ]
+            # [ inline ( always ) ]
+            pub fn ssi(&mut self) -> _SsiW {
+                _SsiW { w: self }
+            }
+            # [ doc = "Bit 7 - Frame format" ]
+            # [ inline ( always ) ]
+            pub fn lsbfirst(&mut self) -> _LsbfirstW {
+                _LsbfirstW { w: self }
+            }
+            # [ doc = "Bit 6 - SPI enable" ]
+            # [ inline ( always ) ]
+            pub fn spe(&mut self) -> _SpeW {
+                _SpeW { w: self }
+            }
+            # [ doc = "Bits 3:5 - Baud rate control" ]
+            # [ inline ( always ) ]
+            pub fn br(&mut self) -> _BrW {
+                _BrW { w: self }
+            }
+            # [ doc = "Bit 2 - Master selection" ]
+            # [ inline ( always ) ]
+            pub fn mstr(&mut self) -> _MstrW {
+                _MstrW { w: self }
+            }
+            # [ doc = "Bit 1 - Clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn cpol(&mut self) -> _CpolW {
+                _CpolW { w: self }
+            }
+            # [ doc = "Bit 0 - Clock phase" ]
+            # [ inline ( always ) ]
+            pub fn cpha(&mut self) -> _CphaW {
+                _CphaW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxeieR {
+            bits: u8,
+        }
+        impl TxeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxneieR {
+            bits: u8,
+        }
+        impl RxneieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrieR {
+            bits: u8,
+        }
+        impl ErrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrfR {
+            bits: u8,
+        }
+        impl FrfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsoeR {
+            bits: u8,
+        }
+        impl SsoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxdmaenR {
+            bits: u8,
+        }
+        impl TxdmaenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdmaenR {
+            bits: u8,
+        }
+        impl RxdmaenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxneieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxneieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SsoeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SsoeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxdmaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxdmaenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdmaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdmaenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Tx buffer empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&self) -> TxeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxeieR { bits }
+            }
+            # [ doc = "Bit 6 - RX buffer not empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&self) -> RxneieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxneieR { bits }
+            }
+            # [ doc = "Bit 5 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn errie(&self) -> ErrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrieR { bits }
+            }
+            # [ doc = "Bit 4 - Frame format" ]
+            # [ inline ( always ) ]
+            pub fn frf(&self) -> FrfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrfR { bits }
+            }
+            # [ doc = "Bit 2 - SS output enable" ]
+            # [ inline ( always ) ]
+            pub fn ssoe(&self) -> SsoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SsoeR { bits }
+            }
+            # [ doc = "Bit 1 - Tx buffer DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn txdmaen(&self) -> TxdmaenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxdmaenR { bits }
+            }
+            # [ doc = "Bit 0 - Rx buffer DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn rxdmaen(&self) -> RxdmaenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdmaenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Tx buffer empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&mut self) -> _TxeieW {
+                _TxeieW { w: self }
+            }
+            # [ doc = "Bit 6 - RX buffer not empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&mut self) -> _RxneieW {
+                _RxneieW { w: self }
+            }
+            # [ doc = "Bit 5 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn errie(&mut self) -> _ErrieW {
+                _ErrieW { w: self }
+            }
+            # [ doc = "Bit 4 - Frame format" ]
+            # [ inline ( always ) ]
+            pub fn frf(&mut self) -> _FrfW {
+                _FrfW { w: self }
+            }
+            # [ doc = "Bit 2 - SS output enable" ]
+            # [ inline ( always ) ]
+            pub fn ssoe(&mut self) -> _SsoeW {
+                _SsoeW { w: self }
+            }
+            # [ doc = "Bit 1 - Tx buffer DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn txdmaen(&mut self) -> _TxdmaenW {
+                _TxdmaenW { w: self }
+            }
+            # [ doc = "Bit 0 - Rx buffer DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn rxdmaen(&mut self) -> _RxdmaenW {
+                _RxdmaenW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifrfeR {
+            bits: u8,
+        }
+        impl TifrfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BsyR {
+            bits: u8,
+        }
+        impl BsyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrR {
+            bits: u8,
+        }
+        impl OvrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ModfR {
+            bits: u8,
+        }
+        impl ModfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcerrR {
+            bits: u8,
+        }
+        impl CrcerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdrR {
+            bits: u8,
+        }
+        impl UdrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChsideR {
+            bits: u8,
+        }
+        impl ChsideR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxeR {
+            bits: u8,
+        }
+        impl TxeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxneR {
+            bits: u8,
+        }
+        impl RxneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 8 - TI frame format error" ]
+            # [ inline ( always ) ]
+            pub fn tifrfe(&self) -> TifrfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifrfeR { bits }
+            }
+            # [ doc = "Bit 7 - Busy flag" ]
+            # [ inline ( always ) ]
+            pub fn bsy(&self) -> BsyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BsyR { bits }
+            }
+            # [ doc = "Bit 6 - Overrun flag" ]
+            # [ inline ( always ) ]
+            pub fn ovr(&self) -> OvrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrR { bits }
+            }
+            # [ doc = "Bit 5 - Mode fault" ]
+            # [ inline ( always ) ]
+            pub fn modf(&self) -> ModfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ModfR { bits }
+            }
+            # [ doc = "Bit 4 - CRC error flag" ]
+            # [ inline ( always ) ]
+            pub fn crcerr(&self) -> CrcerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrcerrR { bits }
+            }
+            # [ doc = "Bit 3 - Underrun flag" ]
+            # [ inline ( always ) ]
+            pub fn udr(&self) -> UdrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdrR { bits }
+            }
+            # [ doc = "Bit 2 - Channel side" ]
+            # [ inline ( always ) ]
+            pub fn chside(&self) -> ChsideR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChsideR { bits }
+            }
+            # [ doc = "Bit 1 - Transmit buffer empty" ]
+            # [ inline ( always ) ]
+            pub fn txe(&self) -> TxeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxeR { bits }
+            }
+            # [ doc = "Bit 0 - Receive buffer not empty" ]
+            # [ inline ( always ) ]
+            pub fn rxne(&self) -> RxneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxneR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 4 - CRC error flag" ]
+            # [ inline ( always ) ]
+            pub fn crcerr(&mut self) -> _CrcerrW {
+                _CrcerrW { w: self }
+            }
+        }
+    }
+    # [ doc = "data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrR {
+            bits: u16,
+        }
+        impl DrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Data register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&self) -> DrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Data register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&mut self) -> _DrW {
+                _DrW { w: self }
+            }
+        }
+    }
+    # [ doc = "CRC polynomial register" ]
+    pub struct Crcpr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "CRC polynomial register" ]
+    pub mod crcpr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Crcpr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrcpolyR {
+            bits: u16,
+        }
+        impl CrcpolyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrcpolyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrcpolyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - CRC polynomial register" ]
+            # [ inline ( always ) ]
+            pub fn crcpoly(&self) -> CrcpolyR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CrcpolyR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 7 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - CRC polynomial register" ]
+            # [ inline ( always ) ]
+            pub fn crcpoly(&mut self) -> _CrcpolyW {
+                _CrcpolyW { w: self }
+            }
+        }
+    }
+    # [ doc = "RX CRC register" ]
+    pub struct Rxcrcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "RX CRC register" ]
+    pub mod rxcrcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rxcrcr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxCrcR {
+            bits: u16,
+        }
+        impl RxCrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Rx CRC register" ]
+            # [ inline ( always ) ]
+            pub fn rx_crc(&self) -> RxCrcR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RxCrcR { bits }
+            }
+        }
+    }
+    # [ doc = "TX CRC register" ]
+    pub struct Txcrcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "TX CRC register" ]
+    pub mod txcrcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Txcrcr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxCrcR {
+            bits: u16,
+        }
+        impl TxCrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Tx CRC register" ]
+            # [ inline ( always ) ]
+            pub fn tx_crc(&self) -> TxCrcR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TxCrcR { bits }
+            }
+        }
+    }
+    # [ doc = "I2S configuration register" ]
+    pub struct I2scfgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "I2S configuration register" ]
+    pub mod i2scfgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::I2scfgr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2smodR {
+            bits: u8,
+        }
+        impl I2smodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2seR {
+            bits: u8,
+        }
+        impl I2seR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2scfgR {
+            bits: u8,
+        }
+        impl I2scfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcmsyncR {
+            bits: u8,
+        }
+        impl PcmsyncR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2sstdR {
+            bits: u8,
+        }
+        impl I2sstdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkpolR {
+            bits: u8,
+        }
+        impl CkpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatlenR {
+            bits: u8,
+        }
+        impl DatlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChlenR {
+            bits: u8,
+        }
+        impl ChlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2smodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2smodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2seW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2seW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2scfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2scfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PcmsyncW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PcmsyncW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2sstdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2sstdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 11 - I2S mode selection" ]
+            # [ inline ( always ) ]
+            pub fn i2smod(&self) -> I2smodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2smodR { bits }
+            }
+            # [ doc = "Bit 10 - I2S Enable" ]
+            # [ inline ( always ) ]
+            pub fn i2se(&self) -> I2seR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2seR { bits }
+            }
+            # [ doc = "Bits 8:9 - I2S configuration mode" ]
+            # [ inline ( always ) ]
+            pub fn i2scfg(&self) -> I2scfgR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2scfgR { bits }
+            }
+            # [ doc = "Bit 7 - PCM frame synchronization" ]
+            # [ inline ( always ) ]
+            pub fn pcmsync(&self) -> PcmsyncR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcmsyncR { bits }
+            }
+            # [ doc = "Bits 4:5 - I2S standard selection" ]
+            # [ inline ( always ) ]
+            pub fn i2sstd(&self) -> I2sstdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2sstdR { bits }
+            }
+            # [ doc = "Bit 3 - Steady state clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn ckpol(&self) -> CkpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkpolR { bits }
+            }
+            # [ doc = "Bits 1:2 - Data length to be transferred" ]
+            # [ inline ( always ) ]
+            pub fn datlen(&self) -> DatlenR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatlenR { bits }
+            }
+            # [ doc = "Bit 0 - Channel length (number of bits per audio channel)" ]
+            # [ inline ( always ) ]
+            pub fn chlen(&self) -> ChlenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChlenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 11 - I2S mode selection" ]
+            # [ inline ( always ) ]
+            pub fn i2smod(&mut self) -> _I2smodW {
+                _I2smodW { w: self }
+            }
+            # [ doc = "Bit 10 - I2S Enable" ]
+            # [ inline ( always ) ]
+            pub fn i2se(&mut self) -> _I2seW {
+                _I2seW { w: self }
+            }
+            # [ doc = "Bits 8:9 - I2S configuration mode" ]
+            # [ inline ( always ) ]
+            pub fn i2scfg(&mut self) -> _I2scfgW {
+                _I2scfgW { w: self }
+            }
+            # [ doc = "Bit 7 - PCM frame synchronization" ]
+            # [ inline ( always ) ]
+            pub fn pcmsync(&mut self) -> _PcmsyncW {
+                _PcmsyncW { w: self }
+            }
+            # [ doc = "Bits 4:5 - I2S standard selection" ]
+            # [ inline ( always ) ]
+            pub fn i2sstd(&mut self) -> _I2sstdW {
+                _I2sstdW { w: self }
+            }
+            # [ doc = "Bit 3 - Steady state clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn ckpol(&mut self) -> _CkpolW {
+                _CkpolW { w: self }
+            }
+            # [ doc = "Bits 1:2 - Data length to be transferred" ]
+            # [ inline ( always ) ]
+            pub fn datlen(&mut self) -> _DatlenW {
+                _DatlenW { w: self }
+            }
+            # [ doc = "Bit 0 - Channel length (number of bits per audio channel)" ]
+            # [ inline ( always ) ]
+            pub fn chlen(&mut self) -> _ChlenW {
+                _ChlenW { w: self }
+            }
+        }
+    }
+    # [ doc = "I2S prescaler register" ]
+    pub struct I2spr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "I2S prescaler register" ]
+    pub mod i2spr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::I2spr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MckoeR {
+            bits: u8,
+        }
+        impl MckoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddR {
+            bits: u8,
+        }
+        impl OddR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2sdivR {
+            bits: u8,
+        }
+        impl I2sdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MckoeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MckoeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2sdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2sdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - Master clock output enable" ]
+            # [ inline ( always ) ]
+            pub fn mckoe(&self) -> MckoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MckoeR { bits }
+            }
+            # [ doc = "Bit 8 - Odd factor for the prescaler" ]
+            # [ inline ( always ) ]
+            pub fn odd(&self) -> OddR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddR { bits }
+            }
+            # [ doc = "Bits 0:7 - I2S Linear prescaler" ]
+            # [ inline ( always ) ]
+            pub fn i2sdiv(&self) -> I2sdivR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2sdivR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 10 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - Master clock output enable" ]
+            # [ inline ( always ) ]
+            pub fn mckoe(&mut self) -> _MckoeW {
+                _MckoeW { w: self }
+            }
+            # [ doc = "Bit 8 - Odd factor for the prescaler" ]
+            # [ inline ( always ) ]
+            pub fn odd(&mut self) -> _OddW {
+                _OddW { w: self }
+            }
+            # [ doc = "Bits 0:7 - I2S Linear prescaler" ]
+            # [ inline ( always ) ]
+            pub fn i2sdiv(&mut self) -> _I2sdivW {
+                _I2sdivW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Serial peripheral interface" ]
+pub struct Spi1 {
+    register_block: spi1::RegisterBlock,
+}
+impl Deref for Spi1 {
+    type Target = spi1::RegisterBlock;
+    fn deref(&self) -> &spi1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "SPI2" ]
+pub const SPI2: Peripheral<Spi2> = unsafe { Peripheral::new(1073756160) };
+# [ doc = r" Register block" ]
+pub struct Spi2 {
+    register_block: spi1::RegisterBlock,
+}
+impl Deref for Spi2 {
+    type Target = spi1::RegisterBlock;
+    fn deref(&self) -> &spi1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "SPI3" ]
+pub const SPI3: Peripheral<Spi3> = unsafe { Peripheral::new(1073757184) };
+# [ doc = r" Register block" ]
+pub struct Spi3 {
+    register_block: spi1::RegisterBlock,
+}
+impl Deref for Spi3 {
+    type Target = spi1::RegisterBlock;
+    fn deref(&self) -> &spi1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "I2S2ext" ]
+pub const I2S2EXT: Peripheral<I2s2ext> = unsafe { Peripheral::new(1073755136) };
+# [ doc = r" Register block" ]
+pub struct I2s2ext {
+    register_block: spi1::RegisterBlock,
+}
+impl Deref for I2s2ext {
+    type Target = spi1::RegisterBlock;
+    fn deref(&self) -> &spi1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "I2S3ext" ]
+pub const I2S3EXT: Peripheral<I2s3ext> = unsafe { Peripheral::new(1073758208) };
+# [ doc = r" Register block" ]
+pub struct I2s3ext {
+    register_block: spi1::RegisterBlock,
+}
+impl Deref for I2s3ext {
+    type Target = spi1::RegisterBlock;
+    fn deref(&self) -> &spi1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Secure digital input/output interface" ]
+pub const SDIO: Peripheral<Sdio> = unsafe { Peripheral::new(1073818624) };
+# [ doc = "Secure digital input/output interface" ]
+pub mod sdio {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - power control register" ]
+        pub power: Power,
+        # [ doc = "0x04 - SDI clock control register" ]
+        pub clkcr: Clkcr,
+        # [ doc = "0x08 - argument register" ]
+        pub arg: Arg,
+        # [ doc = "0x0c - command register" ]
+        pub cmd: Cmd,
+        # [ doc = "0x10 - command response register" ]
+        pub respcmd: Respcmd,
+        # [ doc = "0x14 - response 1..4 register" ]
+        pub resp1: Resp1,
+        # [ doc = "0x18 - response 1..4 register" ]
+        pub resp2: Resp2,
+        # [ doc = "0x1c - response 1..4 register" ]
+        pub resp3: Resp3,
+        # [ doc = "0x20 - response 1..4 register" ]
+        pub resp4: Resp4,
+        # [ doc = "0x24 - data timer register" ]
+        pub dtimer: Dtimer,
+        # [ doc = "0x28 - data length register" ]
+        pub dlen: Dlen,
+        # [ doc = "0x2c - data control register" ]
+        pub dctrl: Dctrl,
+        # [ doc = "0x30 - data counter register" ]
+        pub dcount: Dcount,
+        # [ doc = "0x34 - status register" ]
+        pub sta: Sta,
+        # [ doc = "0x38 - interrupt clear register" ]
+        pub icr: Icr,
+        # [ doc = "0x3c - mask register" ]
+        pub mask: Mask,
+        _reserved0: [u8; 8usize],
+        # [ doc = "0x48 - FIFO counter register" ]
+        pub fifocnt: Fifocnt,
+        _reserved1: [u8; 52usize],
+        # [ doc = "0x80 - data FIFO register" ]
+        pub fifo: Fifo,
+    }
+    # [ doc = "power control register" ]
+    pub struct Power {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "power control register" ]
+    pub mod power {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Power {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrctrlR {
+            bits: u8,
+        }
+        impl PwrctrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrctrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrctrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - PWRCTRL" ]
+            # [ inline ( always ) ]
+            pub fn pwrctrl(&self) -> PwrctrlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrctrlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - PWRCTRL" ]
+            # [ inline ( always ) ]
+            pub fn pwrctrl(&mut self) -> _PwrctrlW {
+                _PwrctrlW { w: self }
+            }
+        }
+    }
+    # [ doc = "SDI clock control register" ]
+    pub struct Clkcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "SDI clock control register" ]
+    pub mod clkcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Clkcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HwfcEnR {
+            bits: u8,
+        }
+        impl HwfcEnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NegedgeR {
+            bits: u8,
+        }
+        impl NegedgeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WidbusR {
+            bits: u8,
+        }
+        impl WidbusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BypassR {
+            bits: u8,
+        }
+        impl BypassR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrsavR {
+            bits: u8,
+        }
+        impl PwrsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkenR {
+            bits: u8,
+        }
+        impl ClkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkdivR {
+            bits: u8,
+        }
+        impl ClkdivR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HwfcEnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HwfcEnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NegedgeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NegedgeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WidbusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WidbusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BypassW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BypassW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrsavW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrsavW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkdivW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkdivW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - HW Flow Control enable" ]
+            # [ inline ( always ) ]
+            pub fn hwfc_en(&self) -> HwfcEnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HwfcEnR { bits }
+            }
+            # [ doc = "Bit 13 - SDIO_CK dephasing selection bit" ]
+            # [ inline ( always ) ]
+            pub fn negedge(&self) -> NegedgeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NegedgeR { bits }
+            }
+            # [ doc = "Bits 11:12 - Wide bus mode enable bit" ]
+            # [ inline ( always ) ]
+            pub fn widbus(&self) -> WidbusR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WidbusR { bits }
+            }
+            # [ doc = "Bit 10 - Clock divider bypass enable bit" ]
+            # [ inline ( always ) ]
+            pub fn bypass(&self) -> BypassR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BypassR { bits }
+            }
+            # [ doc = "Bit 9 - Power saving configuration bit" ]
+            # [ inline ( always ) ]
+            pub fn pwrsav(&self) -> PwrsavR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrsavR { bits }
+            }
+            # [ doc = "Bit 8 - Clock enable bit" ]
+            # [ inline ( always ) ]
+            pub fn clken(&self) -> ClkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkenR { bits }
+            }
+            # [ doc = "Bits 0:7 - Clock divide factor" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&self) -> ClkdivR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkdivR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - HW Flow Control enable" ]
+            # [ inline ( always ) ]
+            pub fn hwfc_en(&mut self) -> _HwfcEnW {
+                _HwfcEnW { w: self }
+            }
+            # [ doc = "Bit 13 - SDIO_CK dephasing selection bit" ]
+            # [ inline ( always ) ]
+            pub fn negedge(&mut self) -> _NegedgeW {
+                _NegedgeW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Wide bus mode enable bit" ]
+            # [ inline ( always ) ]
+            pub fn widbus(&mut self) -> _WidbusW {
+                _WidbusW { w: self }
+            }
+            # [ doc = "Bit 10 - Clock divider bypass enable bit" ]
+            # [ inline ( always ) ]
+            pub fn bypass(&mut self) -> _BypassW {
+                _BypassW { w: self }
+            }
+            # [ doc = "Bit 9 - Power saving configuration bit" ]
+            # [ inline ( always ) ]
+            pub fn pwrsav(&mut self) -> _PwrsavW {
+                _PwrsavW { w: self }
+            }
+            # [ doc = "Bit 8 - Clock enable bit" ]
+            # [ inline ( always ) ]
+            pub fn clken(&mut self) -> _ClkenW {
+                _ClkenW { w: self }
+            }
+            # [ doc = "Bits 0:7 - Clock divide factor" ]
+            # [ inline ( always ) ]
+            pub fn clkdiv(&mut self) -> _ClkdivW {
+                _ClkdivW { w: self }
+            }
+        }
+    }
+    # [ doc = "argument register" ]
+    pub struct Arg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "argument register" ]
+    pub mod arg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdargR {
+            bits: u32,
+        }
+        impl CmdargR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdargW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdargW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Command argument" ]
+            # [ inline ( always ) ]
+            pub fn cmdarg(&self) -> CmdargR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                CmdargR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Command argument" ]
+            # [ inline ( always ) ]
+            pub fn cmdarg(&mut self) -> _CmdargW {
+                _CmdargW { w: self }
+            }
+        }
+    }
+    # [ doc = "command register" ]
+    pub struct Cmd {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "command register" ]
+    pub mod cmd {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cmd {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CeAtacmdR {
+            bits: u8,
+        }
+        impl CeAtacmdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NIenR {
+            bits: u8,
+        }
+        impl NIenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EncmdcomplR {
+            bits: u8,
+        }
+        impl EncmdcomplR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdiosuspendR {
+            bits: u8,
+        }
+        impl SdiosuspendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CpsmenR {
+            bits: u8,
+        }
+        impl CpsmenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitpendR {
+            bits: u8,
+        }
+        impl WaitpendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitintR {
+            bits: u8,
+        }
+        impl WaitintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WaitrespR {
+            bits: u8,
+        }
+        impl WaitrespR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdindexR {
+            bits: u8,
+        }
+        impl CmdindexR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CeAtacmdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CeAtacmdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NIenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NIenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EncmdcomplW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EncmdcomplW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdiosuspendW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdiosuspendW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CpsmenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CpsmenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitpendW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitpendW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WaitrespW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WaitrespW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdindexW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdindexW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - CE-ATA command" ]
+            # [ inline ( always ) ]
+            pub fn ce_atacmd(&self) -> CeAtacmdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CeAtacmdR { bits }
+            }
+            # [ doc = "Bit 13 - not Interrupt Enable" ]
+            # [ inline ( always ) ]
+            pub fn n_ien(&self) -> NIenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NIenR { bits }
+            }
+            # [ doc = "Bit 12 - Enable CMD completion" ]
+            # [ inline ( always ) ]
+            pub fn encmdcompl(&self) -> EncmdcomplR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EncmdcomplR { bits }
+            }
+            # [ doc = "Bit 11 - SD I/O suspend command" ]
+            # [ inline ( always ) ]
+            pub fn sdiosuspend(&self) -> SdiosuspendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdiosuspendR { bits }
+            }
+            # [ doc = "Bit 10 - Command path state machine (CPSM) Enable bit" ]
+            # [ inline ( always ) ]
+            pub fn cpsmen(&self) -> CpsmenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CpsmenR { bits }
+            }
+            # [ doc = "Bit 9 - CPSM Waits for ends of data transfer (CmdPend internal signal)." ]
+            # [ inline ( always ) ]
+            pub fn waitpend(&self) -> WaitpendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitpendR { bits }
+            }
+            # [ doc = "Bit 8 - CPSM waits for interrupt request" ]
+            # [ inline ( always ) ]
+            pub fn waitint(&self) -> WaitintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitintR { bits }
+            }
+            # [ doc = "Bits 6:7 - Wait for response bits" ]
+            # [ inline ( always ) ]
+            pub fn waitresp(&self) -> WaitrespR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WaitrespR { bits }
+            }
+            # [ doc = "Bits 0:5 - Command index" ]
+            # [ inline ( always ) ]
+            pub fn cmdindex(&self) -> CmdindexR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdindexR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - CE-ATA command" ]
+            # [ inline ( always ) ]
+            pub fn ce_atacmd(&mut self) -> _CeAtacmdW {
+                _CeAtacmdW { w: self }
+            }
+            # [ doc = "Bit 13 - not Interrupt Enable" ]
+            # [ inline ( always ) ]
+            pub fn n_ien(&mut self) -> _NIenW {
+                _NIenW { w: self }
+            }
+            # [ doc = "Bit 12 - Enable CMD completion" ]
+            # [ inline ( always ) ]
+            pub fn encmdcompl(&mut self) -> _EncmdcomplW {
+                _EncmdcomplW { w: self }
+            }
+            # [ doc = "Bit 11 - SD I/O suspend command" ]
+            # [ inline ( always ) ]
+            pub fn sdiosuspend(&mut self) -> _SdiosuspendW {
+                _SdiosuspendW { w: self }
+            }
+            # [ doc = "Bit 10 - Command path state machine (CPSM) Enable bit" ]
+            # [ inline ( always ) ]
+            pub fn cpsmen(&mut self) -> _CpsmenW {
+                _CpsmenW { w: self }
+            }
+            # [ doc = "Bit 9 - CPSM Waits for ends of data transfer (CmdPend internal signal)." ]
+            # [ inline ( always ) ]
+            pub fn waitpend(&mut self) -> _WaitpendW {
+                _WaitpendW { w: self }
+            }
+            # [ doc = "Bit 8 - CPSM waits for interrupt request" ]
+            # [ inline ( always ) ]
+            pub fn waitint(&mut self) -> _WaitintW {
+                _WaitintW { w: self }
+            }
+            # [ doc = "Bits 6:7 - Wait for response bits" ]
+            # [ inline ( always ) ]
+            pub fn waitresp(&mut self) -> _WaitrespW {
+                _WaitrespW { w: self }
+            }
+            # [ doc = "Bits 0:5 - Command index" ]
+            # [ inline ( always ) ]
+            pub fn cmdindex(&mut self) -> _CmdindexW {
+                _CmdindexW { w: self }
+            }
+        }
+    }
+    # [ doc = "command response register" ]
+    pub struct Respcmd {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "command response register" ]
+    pub mod respcmd {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Respcmd {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RespcmdR {
+            bits: u8,
+        }
+        impl RespcmdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:5 - Response command index" ]
+            # [ inline ( always ) ]
+            pub fn respcmd(&self) -> RespcmdR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RespcmdR { bits }
+            }
+        }
+    }
+    # [ doc = "response 1..4 register" ]
+    pub struct Resp1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "response 1..4 register" ]
+    pub mod resp1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Resp1 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cardstatus1R {
+            bits: u32,
+        }
+        impl Cardstatus1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - see Table 132." ]
+            # [ inline ( always ) ]
+            pub fn cardstatus1(&self) -> Cardstatus1R {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Cardstatus1R { bits }
+            }
+        }
+    }
+    # [ doc = "response 1..4 register" ]
+    pub struct Resp2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "response 1..4 register" ]
+    pub mod resp2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Resp2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cardstatus2R {
+            bits: u32,
+        }
+        impl Cardstatus2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - see Table 132." ]
+            # [ inline ( always ) ]
+            pub fn cardstatus2(&self) -> Cardstatus2R {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Cardstatus2R { bits }
+            }
+        }
+    }
+    # [ doc = "response 1..4 register" ]
+    pub struct Resp3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "response 1..4 register" ]
+    pub mod resp3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Resp3 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cardstatus3R {
+            bits: u32,
+        }
+        impl Cardstatus3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - see Table 132." ]
+            # [ inline ( always ) ]
+            pub fn cardstatus3(&self) -> Cardstatus3R {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Cardstatus3R { bits }
+            }
+        }
+    }
+    # [ doc = "response 1..4 register" ]
+    pub struct Resp4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "response 1..4 register" ]
+    pub mod resp4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Resp4 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cardstatus4R {
+            bits: u32,
+        }
+        impl Cardstatus4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - see Table 132." ]
+            # [ inline ( always ) ]
+            pub fn cardstatus4(&self) -> Cardstatus4R {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Cardstatus4R { bits }
+            }
+        }
+    }
+    # [ doc = "data timer register" ]
+    pub struct Dtimer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data timer register" ]
+    pub mod dtimer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dtimer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatatimeR {
+            bits: u32,
+        }
+        impl DatatimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatatimeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatatimeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Data timeout period" ]
+            # [ inline ( always ) ]
+            pub fn datatime(&self) -> DatatimeR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DatatimeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Data timeout period" ]
+            # [ inline ( always ) ]
+            pub fn datatime(&mut self) -> _DatatimeW {
+                _DatatimeW { w: self }
+            }
+        }
+    }
+    # [ doc = "data length register" ]
+    pub struct Dlen {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data length register" ]
+    pub mod dlen {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dlen {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatalengthR {
+            bits: u32,
+        }
+        impl DatalengthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatalengthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatalengthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 33554431;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:24 - Data length value" ]
+            # [ inline ( always ) ]
+            pub fn datalength(&self) -> DatalengthR {
+                let bits = {
+                    const MASK: u32 = 33554431;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DatalengthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:24 - Data length value" ]
+            # [ inline ( always ) ]
+            pub fn datalength(&mut self) -> _DatalengthW {
+                _DatalengthW { w: self }
+            }
+        }
+    }
+    # [ doc = "data control register" ]
+    pub struct Dctrl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data control register" ]
+    pub mod dctrl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dctrl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdioenR {
+            bits: u8,
+        }
+        impl SdioenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwmodR {
+            bits: u8,
+        }
+        impl RwmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwstopR {
+            bits: u8,
+        }
+        impl RwstopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwstartR {
+            bits: u8,
+        }
+        impl RwstartR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DblocksizeR {
+            bits: u8,
+        }
+        impl DblocksizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaenR {
+            bits: u8,
+        }
+        impl DmaenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtmodeR {
+            bits: u8,
+        }
+        impl DtmodeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtdirR {
+            bits: u8,
+        }
+        impl DtdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtenR {
+            bits: u8,
+        }
+        impl DtenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdioenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdioenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwstopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwstopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwstartW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwstartW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DblocksizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DblocksizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtmodeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtmodeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 11 - SD I/O enable functions" ]
+            # [ inline ( always ) ]
+            pub fn sdioen(&self) -> SdioenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdioenR { bits }
+            }
+            # [ doc = "Bit 10 - Read wait mode" ]
+            # [ inline ( always ) ]
+            pub fn rwmod(&self) -> RwmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwmodR { bits }
+            }
+            # [ doc = "Bit 9 - Read wait stop" ]
+            # [ inline ( always ) ]
+            pub fn rwstop(&self) -> RwstopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwstopR { bits }
+            }
+            # [ doc = "Bit 8 - Read wait start" ]
+            # [ inline ( always ) ]
+            pub fn rwstart(&self) -> RwstartR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwstartR { bits }
+            }
+            # [ doc = "Bits 4:7 - Data block size" ]
+            # [ inline ( always ) ]
+            pub fn dblocksize(&self) -> DblocksizeR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DblocksizeR { bits }
+            }
+            # [ doc = "Bit 3 - DMA enable bit" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&self) -> DmaenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmaenR { bits }
+            }
+            # [ doc = "Bit 2 - Data transfer mode selection 1: Stream or SDIO multibyte data transfer." ]
+            # [ inline ( always ) ]
+            pub fn dtmode(&self) -> DtmodeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtmodeR { bits }
+            }
+            # [ doc = "Bit 1 - Data transfer direction selection" ]
+            # [ inline ( always ) ]
+            pub fn dtdir(&self) -> DtdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtdirR { bits }
+            }
+            # [ doc = "Bit 0 - DTEN" ]
+            # [ inline ( always ) ]
+            pub fn dten(&self) -> DtenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 11 - SD I/O enable functions" ]
+            # [ inline ( always ) ]
+            pub fn sdioen(&mut self) -> _SdioenW {
+                _SdioenW { w: self }
+            }
+            # [ doc = "Bit 10 - Read wait mode" ]
+            # [ inline ( always ) ]
+            pub fn rwmod(&mut self) -> _RwmodW {
+                _RwmodW { w: self }
+            }
+            # [ doc = "Bit 9 - Read wait stop" ]
+            # [ inline ( always ) ]
+            pub fn rwstop(&mut self) -> _RwstopW {
+                _RwstopW { w: self }
+            }
+            # [ doc = "Bit 8 - Read wait start" ]
+            # [ inline ( always ) ]
+            pub fn rwstart(&mut self) -> _RwstartW {
+                _RwstartW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Data block size" ]
+            # [ inline ( always ) ]
+            pub fn dblocksize(&mut self) -> _DblocksizeW {
+                _DblocksizeW { w: self }
+            }
+            # [ doc = "Bit 3 - DMA enable bit" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&mut self) -> _DmaenW {
+                _DmaenW { w: self }
+            }
+            # [ doc = "Bit 2 - Data transfer mode selection 1: Stream or SDIO multibyte data transfer." ]
+            # [ inline ( always ) ]
+            pub fn dtmode(&mut self) -> _DtmodeW {
+                _DtmodeW { w: self }
+            }
+            # [ doc = "Bit 1 - Data transfer direction selection" ]
+            # [ inline ( always ) ]
+            pub fn dtdir(&mut self) -> _DtdirW {
+                _DtdirW { w: self }
+            }
+            # [ doc = "Bit 0 - DTEN" ]
+            # [ inline ( always ) ]
+            pub fn dten(&mut self) -> _DtenW {
+                _DtenW { w: self }
+            }
+        }
+    }
+    # [ doc = "data counter register" ]
+    pub struct Dcount {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data counter register" ]
+    pub mod dcount {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dcount {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatacountR {
+            bits: u32,
+        }
+        impl DatacountR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:24 - Data count value" ]
+            # [ inline ( always ) ]
+            pub fn datacount(&self) -> DatacountR {
+                let bits = {
+                    const MASK: u32 = 33554431;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DatacountR { bits }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sta {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sta {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Sta {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CeataendR {
+            bits: u8,
+        }
+        impl CeataendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdioitR {
+            bits: u8,
+        }
+        impl SdioitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdavlR {
+            bits: u8,
+        }
+        impl RxdavlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxdavlR {
+            bits: u8,
+        }
+        impl TxdavlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifoeR {
+            bits: u8,
+        }
+        impl RxfifoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoeR {
+            bits: u8,
+        }
+        impl TxfifoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifofR {
+            bits: u8,
+        }
+        impl RxfifofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifofR {
+            bits: u8,
+        }
+        impl TxfifofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifohfR {
+            bits: u8,
+        }
+        impl RxfifohfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoheR {
+            bits: u8,
+        }
+        impl TxfifoheR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxactR {
+            bits: u8,
+        }
+        impl RxactR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxactR {
+            bits: u8,
+        }
+        impl TxactR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdactR {
+            bits: u8,
+        }
+        impl CmdactR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbckendR {
+            bits: u8,
+        }
+        impl DbckendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StbiterrR {
+            bits: u8,
+        }
+        impl StbiterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DataendR {
+            bits: u8,
+        }
+        impl DataendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdsentR {
+            bits: u8,
+        }
+        impl CmdsentR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdrendR {
+            bits: u8,
+        }
+        impl CmdrendR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxoverrR {
+            bits: u8,
+        }
+        impl RxoverrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxunderrR {
+            bits: u8,
+        }
+        impl TxunderrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtimeoutR {
+            bits: u8,
+        }
+        impl DtimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtimeoutR {
+            bits: u8,
+        }
+        impl CtimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcrcfailR {
+            bits: u8,
+        }
+        impl DcrcfailR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcrcfailR {
+            bits: u8,
+        }
+        impl CcrcfailR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - CE-ATA command completion signal received for CMD61" ]
+            # [ inline ( always ) ]
+            pub fn ceataend(&self) -> CeataendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CeataendR { bits }
+            }
+            # [ doc = "Bit 22 - SDIO interrupt received" ]
+            # [ inline ( always ) ]
+            pub fn sdioit(&self) -> SdioitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdioitR { bits }
+            }
+            # [ doc = "Bit 21 - Data available in receive FIFO" ]
+            # [ inline ( always ) ]
+            pub fn rxdavl(&self) -> RxdavlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdavlR { bits }
+            }
+            # [ doc = "Bit 20 - Data available in transmit FIFO" ]
+            # [ inline ( always ) ]
+            pub fn txdavl(&self) -> TxdavlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxdavlR { bits }
+            }
+            # [ doc = "Bit 19 - Receive FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn rxfifoe(&self) -> RxfifoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifoeR { bits }
+            }
+            # [ doc = "Bit 18 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfifoe(&self) -> TxfifoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoeR { bits }
+            }
+            # [ doc = "Bit 17 - Receive FIFO full" ]
+            # [ inline ( always ) ]
+            pub fn rxfifof(&self) -> RxfifofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifofR { bits }
+            }
+            # [ doc = "Bit 16 - Transmit FIFO full" ]
+            # [ inline ( always ) ]
+            pub fn txfifof(&self) -> TxfifofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifofR { bits }
+            }
+            # [ doc = "Bit 15 - Receive FIFO half full: there are at least 8 words in the FIFO" ]
+            # [ inline ( always ) ]
+            pub fn rxfifohf(&self) -> RxfifohfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifohfR { bits }
+            }
+            # [ doc = "Bit 14 - Transmit FIFO half empty: at least 8 words can be written into the FIFO" ]
+            # [ inline ( always ) ]
+            pub fn txfifohe(&self) -> TxfifoheR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoheR { bits }
+            }
+            # [ doc = "Bit 13 - Data receive in progress" ]
+            # [ inline ( always ) ]
+            pub fn rxact(&self) -> RxactR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxactR { bits }
+            }
+            # [ doc = "Bit 12 - Data transmit in progress" ]
+            # [ inline ( always ) ]
+            pub fn txact(&self) -> TxactR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxactR { bits }
+            }
+            # [ doc = "Bit 11 - Command transfer in progress" ]
+            # [ inline ( always ) ]
+            pub fn cmdact(&self) -> CmdactR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdactR { bits }
+            }
+            # [ doc = "Bit 10 - Data block sent/received (CRC check passed)" ]
+            # [ inline ( always ) ]
+            pub fn dbckend(&self) -> DbckendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbckendR { bits }
+            }
+            # [ doc = "Bit 9 - Start bit not detected on all data signals in wide bus mode" ]
+            # [ inline ( always ) ]
+            pub fn stbiterr(&self) -> StbiterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StbiterrR { bits }
+            }
+            # [ doc = "Bit 8 - Data end (data counter, SDIDCOUNT, is zero)" ]
+            # [ inline ( always ) ]
+            pub fn dataend(&self) -> DataendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DataendR { bits }
+            }
+            # [ doc = "Bit 7 - Command sent (no response required)" ]
+            # [ inline ( always ) ]
+            pub fn cmdsent(&self) -> CmdsentR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdsentR { bits }
+            }
+            # [ doc = "Bit 6 - Command response received (CRC check passed)" ]
+            # [ inline ( always ) ]
+            pub fn cmdrend(&self) -> CmdrendR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdrendR { bits }
+            }
+            # [ doc = "Bit 5 - Received FIFO overrun error" ]
+            # [ inline ( always ) ]
+            pub fn rxoverr(&self) -> RxoverrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxoverrR { bits }
+            }
+            # [ doc = "Bit 4 - Transmit FIFO underrun error" ]
+            # [ inline ( always ) ]
+            pub fn txunderr(&self) -> TxunderrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxunderrR { bits }
+            }
+            # [ doc = "Bit 3 - Data timeout" ]
+            # [ inline ( always ) ]
+            pub fn dtimeout(&self) -> DtimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtimeoutR { bits }
+            }
+            # [ doc = "Bit 2 - Command response timeout" ]
+            # [ inline ( always ) ]
+            pub fn ctimeout(&self) -> CtimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtimeoutR { bits }
+            }
+            # [ doc = "Bit 1 - Data block sent/received (CRC check failed)" ]
+            # [ inline ( always ) ]
+            pub fn dcrcfail(&self) -> DcrcfailR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcrcfailR { bits }
+            }
+            # [ doc = "Bit 0 - Command response received (CRC check failed)" ]
+            # [ inline ( always ) ]
+            pub fn ccrcfail(&self) -> CcrcfailR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcrcfailR { bits }
+            }
+        }
+    }
+    # [ doc = "interrupt clear register" ]
+    pub struct Icr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "interrupt clear register" ]
+    pub mod icr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Icr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CeataendcR {
+            bits: u8,
+        }
+        impl CeataendcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdioitcR {
+            bits: u8,
+        }
+        impl SdioitcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbckendcR {
+            bits: u8,
+        }
+        impl DbckendcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StbiterrcR {
+            bits: u8,
+        }
+        impl StbiterrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DataendcR {
+            bits: u8,
+        }
+        impl DataendcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdsentcR {
+            bits: u8,
+        }
+        impl CmdsentcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdrendcR {
+            bits: u8,
+        }
+        impl CmdrendcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxoverrcR {
+            bits: u8,
+        }
+        impl RxoverrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxunderrcR {
+            bits: u8,
+        }
+        impl TxunderrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtimeoutcR {
+            bits: u8,
+        }
+        impl DtimeoutcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtimeoutcR {
+            bits: u8,
+        }
+        impl CtimeoutcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcrcfailcR {
+            bits: u8,
+        }
+        impl DcrcfailcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcrcfailcR {
+            bits: u8,
+        }
+        impl CcrcfailcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CeataendcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CeataendcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdioitcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdioitcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbckendcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbckendcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StbiterrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StbiterrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DataendcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DataendcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdsentcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdsentcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdrendcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdrendcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxoverrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxoverrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxunderrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxunderrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtimeoutcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtimeoutcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtimeoutcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtimeoutcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcrcfailcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcrcfailcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcrcfailcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcrcfailcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - CEATAEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ceataendc(&self) -> CeataendcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CeataendcR { bits }
+            }
+            # [ doc = "Bit 22 - SDIOIT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn sdioitc(&self) -> SdioitcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdioitcR { bits }
+            }
+            # [ doc = "Bit 10 - DBCKEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dbckendc(&self) -> DbckendcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbckendcR { bits }
+            }
+            # [ doc = "Bit 9 - STBITERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn stbiterrc(&self) -> StbiterrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StbiterrcR { bits }
+            }
+            # [ doc = "Bit 8 - DATAEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dataendc(&self) -> DataendcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DataendcR { bits }
+            }
+            # [ doc = "Bit 7 - CMDSENT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn cmdsentc(&self) -> CmdsentcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdsentcR { bits }
+            }
+            # [ doc = "Bit 6 - CMDREND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn cmdrendc(&self) -> CmdrendcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdrendcR { bits }
+            }
+            # [ doc = "Bit 5 - RXOVERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn rxoverrc(&self) -> RxoverrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxoverrcR { bits }
+            }
+            # [ doc = "Bit 4 - TXUNDERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn txunderrc(&self) -> TxunderrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxunderrcR { bits }
+            }
+            # [ doc = "Bit 3 - DTIMEOUT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dtimeoutc(&self) -> DtimeoutcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtimeoutcR { bits }
+            }
+            # [ doc = "Bit 2 - CTIMEOUT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ctimeoutc(&self) -> CtimeoutcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtimeoutcR { bits }
+            }
+            # [ doc = "Bit 1 - DCRCFAIL flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dcrcfailc(&self) -> DcrcfailcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcrcfailcR { bits }
+            }
+            # [ doc = "Bit 0 - CCRCFAIL flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ccrcfailc(&self) -> CcrcfailcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcrcfailcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - CEATAEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ceataendc(&mut self) -> _CeataendcW {
+                _CeataendcW { w: self }
+            }
+            # [ doc = "Bit 22 - SDIOIT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn sdioitc(&mut self) -> _SdioitcW {
+                _SdioitcW { w: self }
+            }
+            # [ doc = "Bit 10 - DBCKEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dbckendc(&mut self) -> _DbckendcW {
+                _DbckendcW { w: self }
+            }
+            # [ doc = "Bit 9 - STBITERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn stbiterrc(&mut self) -> _StbiterrcW {
+                _StbiterrcW { w: self }
+            }
+            # [ doc = "Bit 8 - DATAEND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dataendc(&mut self) -> _DataendcW {
+                _DataendcW { w: self }
+            }
+            # [ doc = "Bit 7 - CMDSENT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn cmdsentc(&mut self) -> _CmdsentcW {
+                _CmdsentcW { w: self }
+            }
+            # [ doc = "Bit 6 - CMDREND flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn cmdrendc(&mut self) -> _CmdrendcW {
+                _CmdrendcW { w: self }
+            }
+            # [ doc = "Bit 5 - RXOVERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn rxoverrc(&mut self) -> _RxoverrcW {
+                _RxoverrcW { w: self }
+            }
+            # [ doc = "Bit 4 - TXUNDERR flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn txunderrc(&mut self) -> _TxunderrcW {
+                _TxunderrcW { w: self }
+            }
+            # [ doc = "Bit 3 - DTIMEOUT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dtimeoutc(&mut self) -> _DtimeoutcW {
+                _DtimeoutcW { w: self }
+            }
+            # [ doc = "Bit 2 - CTIMEOUT flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ctimeoutc(&mut self) -> _CtimeoutcW {
+                _CtimeoutcW { w: self }
+            }
+            # [ doc = "Bit 1 - DCRCFAIL flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn dcrcfailc(&mut self) -> _DcrcfailcW {
+                _DcrcfailcW { w: self }
+            }
+            # [ doc = "Bit 0 - CCRCFAIL flag clear bit" ]
+            # [ inline ( always ) ]
+            pub fn ccrcfailc(&mut self) -> _CcrcfailcW {
+                _CcrcfailcW { w: self }
+            }
+        }
+    }
+    # [ doc = "mask register" ]
+    pub struct Mask {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mask register" ]
+    pub mod mask {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mask {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CeataendieR {
+            bits: u8,
+        }
+        impl CeataendieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdioitieR {
+            bits: u8,
+        }
+        impl SdioitieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdavlieR {
+            bits: u8,
+        }
+        impl RxdavlieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxdavlieR {
+            bits: u8,
+        }
+        impl TxdavlieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifoeieR {
+            bits: u8,
+        }
+        impl RxfifoeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoeieR {
+            bits: u8,
+        }
+        impl TxfifoeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifofieR {
+            bits: u8,
+        }
+        impl RxfifofieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifofieR {
+            bits: u8,
+        }
+        impl TxfifofieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfifohfieR {
+            bits: u8,
+        }
+        impl RxfifohfieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoheieR {
+            bits: u8,
+        }
+        impl TxfifoheieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxactieR {
+            bits: u8,
+        }
+        impl RxactieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxactieR {
+            bits: u8,
+        }
+        impl TxactieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdactieR {
+            bits: u8,
+        }
+        impl CmdactieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbckendieR {
+            bits: u8,
+        }
+        impl DbckendieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StbiterrieR {
+            bits: u8,
+        }
+        impl StbiterrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DataendieR {
+            bits: u8,
+        }
+        impl DataendieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdsentieR {
+            bits: u8,
+        }
+        impl CmdsentieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmdrendieR {
+            bits: u8,
+        }
+        impl CmdrendieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxoverrieR {
+            bits: u8,
+        }
+        impl RxoverrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxunderrieR {
+            bits: u8,
+        }
+        impl TxunderrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtimeoutieR {
+            bits: u8,
+        }
+        impl DtimeoutieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtimeoutieR {
+            bits: u8,
+        }
+        impl CtimeoutieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcrcfailieR {
+            bits: u8,
+        }
+        impl DcrcfailieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcrcfailieR {
+            bits: u8,
+        }
+        impl CcrcfailieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CeataendieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CeataendieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdioitieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdioitieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdavlieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdavlieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxdavlieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxdavlieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfifoeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfifoeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfifofieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfifofieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifofieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifofieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfifohfieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfifohfieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoheieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoheieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxactieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxactieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxactieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxactieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdactieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdactieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbckendieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbckendieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StbiterrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StbiterrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DataendieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DataendieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdsentieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdsentieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmdrendieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmdrendieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxoverrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxoverrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxunderrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxunderrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtimeoutieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtimeoutieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtimeoutieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtimeoutieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcrcfailieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcrcfailieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcrcfailieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcrcfailieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - CE-ATA command completion signal received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ceataendie(&self) -> CeataendieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CeataendieR { bits }
+            }
+            # [ doc = "Bit 22 - SDIO mode interrupt received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn sdioitie(&self) -> SdioitieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdioitieR { bits }
+            }
+            # [ doc = "Bit 21 - Data available in Rx FIFO interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxdavlie(&self) -> RxdavlieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdavlieR { bits }
+            }
+            # [ doc = "Bit 20 - Data available in Tx FIFO interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txdavlie(&self) -> TxdavlieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxdavlieR { bits }
+            }
+            # [ doc = "Bit 19 - Rx FIFO empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifoeie(&self) -> RxfifoeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifoeieR { bits }
+            }
+            # [ doc = "Bit 18 - Tx FIFO empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifoeie(&self) -> TxfifoeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoeieR { bits }
+            }
+            # [ doc = "Bit 17 - Rx FIFO full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifofie(&self) -> RxfifofieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifofieR { bits }
+            }
+            # [ doc = "Bit 16 - Tx FIFO full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifofie(&self) -> TxfifofieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifofieR { bits }
+            }
+            # [ doc = "Bit 15 - Rx FIFO half full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifohfie(&self) -> RxfifohfieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfifohfieR { bits }
+            }
+            # [ doc = "Bit 14 - Tx FIFO half empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifoheie(&self) -> TxfifoheieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoheieR { bits }
+            }
+            # [ doc = "Bit 13 - Data receive acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxactie(&self) -> RxactieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxactieR { bits }
+            }
+            # [ doc = "Bit 12 - Data transmit acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txactie(&self) -> TxactieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxactieR { bits }
+            }
+            # [ doc = "Bit 11 - Command acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdactie(&self) -> CmdactieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdactieR { bits }
+            }
+            # [ doc = "Bit 10 - Data block end interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dbckendie(&self) -> DbckendieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbckendieR { bits }
+            }
+            # [ doc = "Bit 9 - Start bit error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn stbiterrie(&self) -> StbiterrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StbiterrieR { bits }
+            }
+            # [ doc = "Bit 8 - Data end interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dataendie(&self) -> DataendieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DataendieR { bits }
+            }
+            # [ doc = "Bit 7 - Command sent interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdsentie(&self) -> CmdsentieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdsentieR { bits }
+            }
+            # [ doc = "Bit 6 - Command response received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdrendie(&self) -> CmdrendieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmdrendieR { bits }
+            }
+            # [ doc = "Bit 5 - Rx FIFO overrun error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxoverrie(&self) -> RxoverrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxoverrieR { bits }
+            }
+            # [ doc = "Bit 4 - Tx FIFO underrun error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txunderrie(&self) -> TxunderrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxunderrieR { bits }
+            }
+            # [ doc = "Bit 3 - Data timeout interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dtimeoutie(&self) -> DtimeoutieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtimeoutieR { bits }
+            }
+            # [ doc = "Bit 2 - Command timeout interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ctimeoutie(&self) -> CtimeoutieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtimeoutieR { bits }
+            }
+            # [ doc = "Bit 1 - Data CRC fail interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dcrcfailie(&self) -> DcrcfailieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcrcfailieR { bits }
+            }
+            # [ doc = "Bit 0 - Command CRC fail interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ccrcfailie(&self) -> CcrcfailieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcrcfailieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - CE-ATA command completion signal received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ceataendie(&mut self) -> _CeataendieW {
+                _CeataendieW { w: self }
+            }
+            # [ doc = "Bit 22 - SDIO mode interrupt received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn sdioitie(&mut self) -> _SdioitieW {
+                _SdioitieW { w: self }
+            }
+            # [ doc = "Bit 21 - Data available in Rx FIFO interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxdavlie(&mut self) -> _RxdavlieW {
+                _RxdavlieW { w: self }
+            }
+            # [ doc = "Bit 20 - Data available in Tx FIFO interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txdavlie(&mut self) -> _TxdavlieW {
+                _TxdavlieW { w: self }
+            }
+            # [ doc = "Bit 19 - Rx FIFO empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifoeie(&mut self) -> _RxfifoeieW {
+                _RxfifoeieW { w: self }
+            }
+            # [ doc = "Bit 18 - Tx FIFO empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifoeie(&mut self) -> _TxfifoeieW {
+                _TxfifoeieW { w: self }
+            }
+            # [ doc = "Bit 17 - Rx FIFO full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifofie(&mut self) -> _RxfifofieW {
+                _RxfifofieW { w: self }
+            }
+            # [ doc = "Bit 16 - Tx FIFO full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifofie(&mut self) -> _TxfifofieW {
+                _TxfifofieW { w: self }
+            }
+            # [ doc = "Bit 15 - Rx FIFO half full interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxfifohfie(&mut self) -> _RxfifohfieW {
+                _RxfifohfieW { w: self }
+            }
+            # [ doc = "Bit 14 - Tx FIFO half empty interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txfifoheie(&mut self) -> _TxfifoheieW {
+                _TxfifoheieW { w: self }
+            }
+            # [ doc = "Bit 13 - Data receive acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxactie(&mut self) -> _RxactieW {
+                _RxactieW { w: self }
+            }
+            # [ doc = "Bit 12 - Data transmit acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txactie(&mut self) -> _TxactieW {
+                _TxactieW { w: self }
+            }
+            # [ doc = "Bit 11 - Command acting interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdactie(&mut self) -> _CmdactieW {
+                _CmdactieW { w: self }
+            }
+            # [ doc = "Bit 10 - Data block end interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dbckendie(&mut self) -> _DbckendieW {
+                _DbckendieW { w: self }
+            }
+            # [ doc = "Bit 9 - Start bit error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn stbiterrie(&mut self) -> _StbiterrieW {
+                _StbiterrieW { w: self }
+            }
+            # [ doc = "Bit 8 - Data end interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dataendie(&mut self) -> _DataendieW {
+                _DataendieW { w: self }
+            }
+            # [ doc = "Bit 7 - Command sent interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdsentie(&mut self) -> _CmdsentieW {
+                _CmdsentieW { w: self }
+            }
+            # [ doc = "Bit 6 - Command response received interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cmdrendie(&mut self) -> _CmdrendieW {
+                _CmdrendieW { w: self }
+            }
+            # [ doc = "Bit 5 - Rx FIFO overrun error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxoverrie(&mut self) -> _RxoverrieW {
+                _RxoverrieW { w: self }
+            }
+            # [ doc = "Bit 4 - Tx FIFO underrun error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txunderrie(&mut self) -> _TxunderrieW {
+                _TxunderrieW { w: self }
+            }
+            # [ doc = "Bit 3 - Data timeout interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dtimeoutie(&mut self) -> _DtimeoutieW {
+                _DtimeoutieW { w: self }
+            }
+            # [ doc = "Bit 2 - Command timeout interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ctimeoutie(&mut self) -> _CtimeoutieW {
+                _CtimeoutieW { w: self }
+            }
+            # [ doc = "Bit 1 - Data CRC fail interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dcrcfailie(&mut self) -> _DcrcfailieW {
+                _DcrcfailieW { w: self }
+            }
+            # [ doc = "Bit 0 - Command CRC fail interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ccrcfailie(&mut self) -> _CcrcfailieW {
+                _CcrcfailieW { w: self }
+            }
+        }
+    }
+    # [ doc = "FIFO counter register" ]
+    pub struct Fifocnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "FIFO counter register" ]
+    pub mod fifocnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Fifocnt {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FifocountR {
+            bits: u32,
+        }
+        impl FifocountR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:23 - Remaining number of words to be written to or read from the FIFO." ]
+            # [ inline ( always ) ]
+            pub fn fifocount(&self) -> FifocountR {
+                let bits = {
+                    const MASK: u32 = 16777215;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                FifocountR { bits }
+            }
+        }
+    }
+    # [ doc = "data FIFO register" ]
+    pub struct Fifo {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "data FIFO register" ]
+    pub mod fifo {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Fifo {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FifodataR {
+            bits: u32,
+        }
+        impl FifodataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FifodataW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FifodataW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Receive and transmit FIFO data" ]
+            # [ inline ( always ) ]
+            pub fn fifodata(&self) -> FifodataR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                FifodataR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Receive and transmit FIFO data" ]
+            # [ inline ( always ) ]
+            pub fn fifodata(&mut self) -> _FifodataW {
+                _FifodataW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Secure digital input/output interface" ]
+pub struct Sdio {
+    register_block: sdio::RegisterBlock,
+}
+impl Deref for Sdio {
+    type Target = sdio::RegisterBlock;
+    fn deref(&self) -> &sdio::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Analog-to-digital converter" ]
+pub const ADC1: Peripheral<Adc1> = unsafe { Peripheral::new(1073815552) };
+# [ doc = "Analog-to-digital converter" ]
+pub mod adc1 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x04 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x08 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x0c - sample time register 1" ]
+        pub smpr1: Smpr1,
+        # [ doc = "0x10 - sample time register 2" ]
+        pub smpr2: Smpr2,
+        # [ doc = "0x14 - injected channel data offset register x" ]
+        pub jofr1: Jofr1,
+        # [ doc = "0x18 - injected channel data offset register x" ]
+        pub jofr2: Jofr2,
+        # [ doc = "0x1c - injected channel data offset register x" ]
+        pub jofr3: Jofr3,
+        # [ doc = "0x20 - injected channel data offset register x" ]
+        pub jofr4: Jofr4,
+        # [ doc = "0x24 - watchdog higher threshold register" ]
+        pub htr: Htr,
+        # [ doc = "0x28 - watchdog lower threshold register" ]
+        pub ltr: Ltr,
+        # [ doc = "0x2c - regular sequence register 1" ]
+        pub sqr1: Sqr1,
+        # [ doc = "0x30 - regular sequence register 2" ]
+        pub sqr2: Sqr2,
+        # [ doc = "0x34 - regular sequence register 3" ]
+        pub sqr3: Sqr3,
+        # [ doc = "0x38 - injected sequence register" ]
+        pub jsqr: Jsqr,
+        # [ doc = "0x3c - injected data register x" ]
+        pub jdr1: Jdr1,
+        # [ doc = "0x40 - injected data register x" ]
+        pub jdr2: Jdr2,
+        # [ doc = "0x44 - injected data register x" ]
+        pub jdr3: Jdr3,
+        # [ doc = "0x48 - injected data register x" ]
+        pub jdr4: Jdr4,
+        # [ doc = "0x4c - regular data register" ]
+        pub dr: Dr,
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrR {
+            bits: u8,
+        }
+        impl OvrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StrtR {
+            bits: u8,
+        }
+        impl StrtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JstrtR {
+            bits: u8,
+        }
+        impl JstrtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JeocR {
+            bits: u8,
+        }
+        impl JeocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EocR {
+            bits: u8,
+        }
+        impl EocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwdR {
+            bits: u8,
+        }
+        impl AwdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OvrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OvrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StrtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StrtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JstrtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JstrtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JeocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JeocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 5 - Overrun" ]
+            # [ inline ( always ) ]
+            pub fn ovr(&self) -> OvrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrR { bits }
+            }
+            # [ doc = "Bit 4 - Regular channel start flag" ]
+            # [ inline ( always ) ]
+            pub fn strt(&self) -> StrtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StrtR { bits }
+            }
+            # [ doc = "Bit 3 - Injected channel start flag" ]
+            # [ inline ( always ) ]
+            pub fn jstrt(&self) -> JstrtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JstrtR { bits }
+            }
+            # [ doc = "Bit 2 - Injected channel end of conversion" ]
+            # [ inline ( always ) ]
+            pub fn jeoc(&self) -> JeocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JeocR { bits }
+            }
+            # [ doc = "Bit 1 - Regular channel end of conversion" ]
+            # [ inline ( always ) ]
+            pub fn eoc(&self) -> EocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EocR { bits }
+            }
+            # [ doc = "Bit 0 - Analog watchdog flag" ]
+            # [ inline ( always ) ]
+            pub fn awd(&self) -> AwdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - Overrun" ]
+            # [ inline ( always ) ]
+            pub fn ovr(&mut self) -> _OvrW {
+                _OvrW { w: self }
+            }
+            # [ doc = "Bit 4 - Regular channel start flag" ]
+            # [ inline ( always ) ]
+            pub fn strt(&mut self) -> _StrtW {
+                _StrtW { w: self }
+            }
+            # [ doc = "Bit 3 - Injected channel start flag" ]
+            # [ inline ( always ) ]
+            pub fn jstrt(&mut self) -> _JstrtW {
+                _JstrtW { w: self }
+            }
+            # [ doc = "Bit 2 - Injected channel end of conversion" ]
+            # [ inline ( always ) ]
+            pub fn jeoc(&mut self) -> _JeocW {
+                _JeocW { w: self }
+            }
+            # [ doc = "Bit 1 - Regular channel end of conversion" ]
+            # [ inline ( always ) ]
+            pub fn eoc(&mut self) -> _EocW {
+                _EocW { w: self }
+            }
+            # [ doc = "Bit 0 - Analog watchdog flag" ]
+            # [ inline ( always ) ]
+            pub fn awd(&mut self) -> _AwdW {
+                _AwdW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrieR {
+            bits: u8,
+        }
+        impl OvrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ResR {
+            bits: u8,
+        }
+        impl ResR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwdenR {
+            bits: u8,
+        }
+        impl AwdenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JawdenR {
+            bits: u8,
+        }
+        impl JawdenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscnumR {
+            bits: u8,
+        }
+        impl DiscnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdiscenR {
+            bits: u8,
+        }
+        impl JdiscenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscenR {
+            bits: u8,
+        }
+        impl DiscenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JautoR {
+            bits: u8,
+        }
+        impl JautoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwdsglR {
+            bits: u8,
+        }
+        impl AwdsglR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ScanR {
+            bits: u8,
+        }
+        impl ScanR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JeocieR {
+            bits: u8,
+        }
+        impl JeocieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwdieR {
+            bits: u8,
+        }
+        impl AwdieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EocieR {
+            bits: u8,
+        }
+        impl EocieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwdchR {
+            bits: u8,
+        }
+        impl AwdchR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OvrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OvrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ResW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ResW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwdenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwdenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JawdenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JawdenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JdiscenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JdiscenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JautoW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JautoW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwdsglW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwdsglW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ScanW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ScanW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JeocieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JeocieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwdieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwdieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EocieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EocieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwdchW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwdchW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 26 - Overrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ovrie(&self) -> OvrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrieR { bits }
+            }
+            # [ doc = "Bits 24:25 - Resolution" ]
+            # [ inline ( always ) ]
+            pub fn res(&self) -> ResR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ResR { bits }
+            }
+            # [ doc = "Bit 23 - Analog watchdog enable on regular channels" ]
+            # [ inline ( always ) ]
+            pub fn awden(&self) -> AwdenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwdenR { bits }
+            }
+            # [ doc = "Bit 22 - Analog watchdog enable on injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jawden(&self) -> JawdenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JawdenR { bits }
+            }
+            # [ doc = "Bits 13:15 - Discontinuous mode channel count" ]
+            # [ inline ( always ) ]
+            pub fn discnum(&self) -> DiscnumR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscnumR { bits }
+            }
+            # [ doc = "Bit 12 - Discontinuous mode on injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jdiscen(&self) -> JdiscenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JdiscenR { bits }
+            }
+            # [ doc = "Bit 11 - Discontinuous mode on regular channels" ]
+            # [ inline ( always ) ]
+            pub fn discen(&self) -> DiscenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscenR { bits }
+            }
+            # [ doc = "Bit 10 - Automatic injected group conversion" ]
+            # [ inline ( always ) ]
+            pub fn jauto(&self) -> JautoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JautoR { bits }
+            }
+            # [ doc = "Bit 9 - Enable the watchdog on a single channel in scan mode" ]
+            # [ inline ( always ) ]
+            pub fn awdsgl(&self) -> AwdsglR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwdsglR { bits }
+            }
+            # [ doc = "Bit 8 - Scan mode" ]
+            # [ inline ( always ) ]
+            pub fn scan(&self) -> ScanR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ScanR { bits }
+            }
+            # [ doc = "Bit 7 - Interrupt enable for injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jeocie(&self) -> JeocieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JeocieR { bits }
+            }
+            # [ doc = "Bit 6 - Analog watchdog interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn awdie(&self) -> AwdieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwdieR { bits }
+            }
+            # [ doc = "Bit 5 - Interrupt enable for EOC" ]
+            # [ inline ( always ) ]
+            pub fn eocie(&self) -> EocieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EocieR { bits }
+            }
+            # [ doc = "Bits 0:4 - Analog watchdog channel select bits" ]
+            # [ inline ( always ) ]
+            pub fn awdch(&self) -> AwdchR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwdchR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 26 - Overrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ovrie(&mut self) -> _OvrieW {
+                _OvrieW { w: self }
+            }
+            # [ doc = "Bits 24:25 - Resolution" ]
+            # [ inline ( always ) ]
+            pub fn res(&mut self) -> _ResW {
+                _ResW { w: self }
+            }
+            # [ doc = "Bit 23 - Analog watchdog enable on regular channels" ]
+            # [ inline ( always ) ]
+            pub fn awden(&mut self) -> _AwdenW {
+                _AwdenW { w: self }
+            }
+            # [ doc = "Bit 22 - Analog watchdog enable on injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jawden(&mut self) -> _JawdenW {
+                _JawdenW { w: self }
+            }
+            # [ doc = "Bits 13:15 - Discontinuous mode channel count" ]
+            # [ inline ( always ) ]
+            pub fn discnum(&mut self) -> _DiscnumW {
+                _DiscnumW { w: self }
+            }
+            # [ doc = "Bit 12 - Discontinuous mode on injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jdiscen(&mut self) -> _JdiscenW {
+                _JdiscenW { w: self }
+            }
+            # [ doc = "Bit 11 - Discontinuous mode on regular channels" ]
+            # [ inline ( always ) ]
+            pub fn discen(&mut self) -> _DiscenW {
+                _DiscenW { w: self }
+            }
+            # [ doc = "Bit 10 - Automatic injected group conversion" ]
+            # [ inline ( always ) ]
+            pub fn jauto(&mut self) -> _JautoW {
+                _JautoW { w: self }
+            }
+            # [ doc = "Bit 9 - Enable the watchdog on a single channel in scan mode" ]
+            # [ inline ( always ) ]
+            pub fn awdsgl(&mut self) -> _AwdsglW {
+                _AwdsglW { w: self }
+            }
+            # [ doc = "Bit 8 - Scan mode" ]
+            # [ inline ( always ) ]
+            pub fn scan(&mut self) -> _ScanW {
+                _ScanW { w: self }
+            }
+            # [ doc = "Bit 7 - Interrupt enable for injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jeocie(&mut self) -> _JeocieW {
+                _JeocieW { w: self }
+            }
+            # [ doc = "Bit 6 - Analog watchdog interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn awdie(&mut self) -> _AwdieW {
+                _AwdieW { w: self }
+            }
+            # [ doc = "Bit 5 - Interrupt enable for EOC" ]
+            # [ inline ( always ) ]
+            pub fn eocie(&mut self) -> _EocieW {
+                _EocieW { w: self }
+            }
+            # [ doc = "Bits 0:4 - Analog watchdog channel select bits" ]
+            # [ inline ( always ) ]
+            pub fn awdch(&mut self) -> _AwdchW {
+                _AwdchW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SwstartR {
+            bits: u8,
+        }
+        impl SwstartR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtenR {
+            bits: u8,
+        }
+        impl ExtenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExtselR {
+            bits: u8,
+        }
+        impl ExtselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JswstartR {
+            bits: u8,
+        }
+        impl JswstartR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JextenR {
+            bits: u8,
+        }
+        impl JextenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JextselR {
+            bits: u8,
+        }
+        impl JextselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlignR {
+            bits: u8,
+        }
+        impl AlignR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EocsR {
+            bits: u8,
+        }
+        impl EocsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DdsR {
+            bits: u8,
+        }
+        impl DdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaR {
+            bits: u8,
+        }
+        impl DmaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ContR {
+            bits: u8,
+        }
+        impl ContR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AdonR {
+            bits: u8,
+        }
+        impl AdonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SwstartW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SwstartW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExtselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExtselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JswstartW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JswstartW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JextenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JextenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JextselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JextselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlignW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlignW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EocsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EocsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ContW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ContW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AdonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AdonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 30 - Start conversion of regular channels" ]
+            # [ inline ( always ) ]
+            pub fn swstart(&self) -> SwstartR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SwstartR { bits }
+            }
+            # [ doc = "Bits 28:29 - External trigger enable for regular channels" ]
+            # [ inline ( always ) ]
+            pub fn exten(&self) -> ExtenR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtenR { bits }
+            }
+            # [ doc = "Bits 24:27 - External event select for regular group" ]
+            # [ inline ( always ) ]
+            pub fn extsel(&self) -> ExtselR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ExtselR { bits }
+            }
+            # [ doc = "Bit 22 - Start conversion of injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jswstart(&self) -> JswstartR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JswstartR { bits }
+            }
+            # [ doc = "Bits 20:21 - External trigger enable for injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jexten(&self) -> JextenR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JextenR { bits }
+            }
+            # [ doc = "Bits 16:19 - External event select for injected group" ]
+            # [ inline ( always ) ]
+            pub fn jextsel(&self) -> JextselR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JextselR { bits }
+            }
+            # [ doc = "Bit 11 - Data alignment" ]
+            # [ inline ( always ) ]
+            pub fn align(&self) -> AlignR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlignR { bits }
+            }
+            # [ doc = "Bit 10 - End of conversion selection" ]
+            # [ inline ( always ) ]
+            pub fn eocs(&self) -> EocsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EocsR { bits }
+            }
+            # [ doc = "Bit 9 - DMA disable selection (for single ADC mode)" ]
+            # [ inline ( always ) ]
+            pub fn dds(&self) -> DdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DdsR { bits }
+            }
+            # [ doc = "Bit 8 - Direct memory access mode (for single ADC mode)" ]
+            # [ inline ( always ) ]
+            pub fn dma(&self) -> DmaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmaR { bits }
+            }
+            # [ doc = "Bit 1 - Continuous conversion" ]
+            # [ inline ( always ) ]
+            pub fn cont(&self) -> ContR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ContR { bits }
+            }
+            # [ doc = "Bit 0 - A/D Converter ON / OFF" ]
+            # [ inline ( always ) ]
+            pub fn adon(&self) -> AdonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AdonR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 30 - Start conversion of regular channels" ]
+            # [ inline ( always ) ]
+            pub fn swstart(&mut self) -> _SwstartW {
+                _SwstartW { w: self }
+            }
+            # [ doc = "Bits 28:29 - External trigger enable for regular channels" ]
+            # [ inline ( always ) ]
+            pub fn exten(&mut self) -> _ExtenW {
+                _ExtenW { w: self }
+            }
+            # [ doc = "Bits 24:27 - External event select for regular group" ]
+            # [ inline ( always ) ]
+            pub fn extsel(&mut self) -> _ExtselW {
+                _ExtselW { w: self }
+            }
+            # [ doc = "Bit 22 - Start conversion of injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jswstart(&mut self) -> _JswstartW {
+                _JswstartW { w: self }
+            }
+            # [ doc = "Bits 20:21 - External trigger enable for injected channels" ]
+            # [ inline ( always ) ]
+            pub fn jexten(&mut self) -> _JextenW {
+                _JextenW { w: self }
+            }
+            # [ doc = "Bits 16:19 - External event select for injected group" ]
+            # [ inline ( always ) ]
+            pub fn jextsel(&mut self) -> _JextselW {
+                _JextselW { w: self }
+            }
+            # [ doc = "Bit 11 - Data alignment" ]
+            # [ inline ( always ) ]
+            pub fn align(&mut self) -> _AlignW {
+                _AlignW { w: self }
+            }
+            # [ doc = "Bit 10 - End of conversion selection" ]
+            # [ inline ( always ) ]
+            pub fn eocs(&mut self) -> _EocsW {
+                _EocsW { w: self }
+            }
+            # [ doc = "Bit 9 - DMA disable selection (for single ADC mode)" ]
+            # [ inline ( always ) ]
+            pub fn dds(&mut self) -> _DdsW {
+                _DdsW { w: self }
+            }
+            # [ doc = "Bit 8 - Direct memory access mode (for single ADC mode)" ]
+            # [ inline ( always ) ]
+            pub fn dma(&mut self) -> _DmaW {
+                _DmaW { w: self }
+            }
+            # [ doc = "Bit 1 - Continuous conversion" ]
+            # [ inline ( always ) ]
+            pub fn cont(&mut self) -> _ContW {
+                _ContW { w: self }
+            }
+            # [ doc = "Bit 0 - A/D Converter ON / OFF" ]
+            # [ inline ( always ) ]
+            pub fn adon(&mut self) -> _AdonW {
+                _AdonW { w: self }
+            }
+        }
+    }
+    # [ doc = "sample time register 1" ]
+    pub struct Smpr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "sample time register 1" ]
+    pub mod smpr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smpr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmpxXR {
+            bits: u32,
+        }
+        impl SmpxXR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmpxXW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmpxXW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Sample time bits" ]
+            # [ inline ( always ) ]
+            pub fn smpx_x(&self) -> SmpxXR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                SmpxXR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Sample time bits" ]
+            # [ inline ( always ) ]
+            pub fn smpx_x(&mut self) -> _SmpxXW {
+                _SmpxXW { w: self }
+            }
+        }
+    }
+    # [ doc = "sample time register 2" ]
+    pub struct Smpr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "sample time register 2" ]
+    pub mod smpr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smpr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmpxXR {
+            bits: u32,
+        }
+        impl SmpxXR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmpxXW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmpxXW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Sample time bits" ]
+            # [ inline ( always ) ]
+            pub fn smpx_x(&self) -> SmpxXR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                SmpxXR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Sample time bits" ]
+            # [ inline ( always ) ]
+            pub fn smpx_x(&mut self) -> _SmpxXW {
+                _SmpxXW { w: self }
+            }
+        }
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub struct Jofr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub mod jofr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Jofr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Joffset1R {
+            bits: u16,
+        }
+        impl Joffset1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Joffset1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Joffset1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset1(&self) -> Joffset1R {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Joffset1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset1(&mut self) -> _Joffset1W {
+                _Joffset1W { w: self }
+            }
+        }
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub struct Jofr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub mod jofr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Jofr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Joffset2R {
+            bits: u16,
+        }
+        impl Joffset2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Joffset2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Joffset2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset2(&self) -> Joffset2R {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Joffset2R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset2(&mut self) -> _Joffset2W {
+                _Joffset2W { w: self }
+            }
+        }
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub struct Jofr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub mod jofr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Jofr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Joffset3R {
+            bits: u16,
+        }
+        impl Joffset3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Joffset3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Joffset3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset3(&self) -> Joffset3R {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Joffset3R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset3(&mut self) -> _Joffset3W {
+                _Joffset3W { w: self }
+            }
+        }
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub struct Jofr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected channel data offset register x" ]
+    pub mod jofr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Jofr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Joffset4R {
+            bits: u16,
+        }
+        impl Joffset4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Joffset4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Joffset4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset4(&self) -> Joffset4R {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Joffset4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Data offset for injected channel x" ]
+            # [ inline ( always ) ]
+            pub fn joffset4(&mut self) -> _Joffset4W {
+                _Joffset4W { w: self }
+            }
+        }
+    }
+    # [ doc = "watchdog higher threshold register" ]
+    pub struct Htr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "watchdog higher threshold register" ]
+    pub mod htr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Htr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtR {
+            bits: u16,
+        }
+        impl HtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Analog watchdog higher threshold" ]
+            # [ inline ( always ) ]
+            pub fn ht(&self) -> HtR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4095 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Analog watchdog higher threshold" ]
+            # [ inline ( always ) ]
+            pub fn ht(&mut self) -> _HtW {
+                _HtW { w: self }
+            }
+        }
+    }
+    # [ doc = "watchdog lower threshold register" ]
+    pub struct Ltr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "watchdog lower threshold register" ]
+    pub mod ltr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ltr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LtR {
+            bits: u16,
+        }
+        impl LtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Analog watchdog lower threshold" ]
+            # [ inline ( always ) ]
+            pub fn lt(&self) -> LtR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                LtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Analog watchdog lower threshold" ]
+            # [ inline ( always ) ]
+            pub fn lt(&mut self) -> _LtW {
+                _LtW { w: self }
+            }
+        }
+    }
+    # [ doc = "regular sequence register 1" ]
+    pub struct Sqr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "regular sequence register 1" ]
+    pub mod sqr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sqr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LR {
+            bits: u8,
+        }
+        impl LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq16R {
+            bits: u8,
+        }
+        impl Sq16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq15R {
+            bits: u8,
+        }
+        impl Sq15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq14R {
+            bits: u8,
+        }
+        impl Sq14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq13R {
+            bits: u8,
+        }
+        impl Sq13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 20:23 - Regular channel sequence length" ]
+            # [ inline ( always ) ]
+            pub fn l(&self) -> LR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LR { bits }
+            }
+            # [ doc = "Bits 15:19 - 16th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq16(&self) -> Sq16R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq16R { bits }
+            }
+            # [ doc = "Bits 10:14 - 15th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq15(&self) -> Sq15R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq15R { bits }
+            }
+            # [ doc = "Bits 5:9 - 14th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq14(&self) -> Sq14R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq14R { bits }
+            }
+            # [ doc = "Bits 0:4 - 13th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq13(&self) -> Sq13R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq13R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 20:23 - Regular channel sequence length" ]
+            # [ inline ( always ) ]
+            pub fn l(&mut self) -> _LW {
+                _LW { w: self }
+            }
+            # [ doc = "Bits 15:19 - 16th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq16(&mut self) -> _Sq16W {
+                _Sq16W { w: self }
+            }
+            # [ doc = "Bits 10:14 - 15th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq15(&mut self) -> _Sq15W {
+                _Sq15W { w: self }
+            }
+            # [ doc = "Bits 5:9 - 14th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq14(&mut self) -> _Sq14W {
+                _Sq14W { w: self }
+            }
+            # [ doc = "Bits 0:4 - 13th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq13(&mut self) -> _Sq13W {
+                _Sq13W { w: self }
+            }
+        }
+    }
+    # [ doc = "regular sequence register 2" ]
+    pub struct Sqr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "regular sequence register 2" ]
+    pub mod sqr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sqr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq12R {
+            bits: u8,
+        }
+        impl Sq12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq11R {
+            bits: u8,
+        }
+        impl Sq11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq10R {
+            bits: u8,
+        }
+        impl Sq10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq9R {
+            bits: u8,
+        }
+        impl Sq9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq8R {
+            bits: u8,
+        }
+        impl Sq8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq7R {
+            bits: u8,
+        }
+        impl Sq7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:29 - 12th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq12(&self) -> Sq12R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq12R { bits }
+            }
+            # [ doc = "Bits 20:24 - 11th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq11(&self) -> Sq11R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq11R { bits }
+            }
+            # [ doc = "Bits 15:19 - 10th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq10(&self) -> Sq10R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq10R { bits }
+            }
+            # [ doc = "Bits 10:14 - 9th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq9(&self) -> Sq9R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq9R { bits }
+            }
+            # [ doc = "Bits 5:9 - 8th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq8(&self) -> Sq8R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq8R { bits }
+            }
+            # [ doc = "Bits 0:4 - 7th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq7(&self) -> Sq7R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq7R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:29 - 12th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq12(&mut self) -> _Sq12W {
+                _Sq12W { w: self }
+            }
+            # [ doc = "Bits 20:24 - 11th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq11(&mut self) -> _Sq11W {
+                _Sq11W { w: self }
+            }
+            # [ doc = "Bits 15:19 - 10th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq10(&mut self) -> _Sq10W {
+                _Sq10W { w: self }
+            }
+            # [ doc = "Bits 10:14 - 9th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq9(&mut self) -> _Sq9W {
+                _Sq9W { w: self }
+            }
+            # [ doc = "Bits 5:9 - 8th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq8(&mut self) -> _Sq8W {
+                _Sq8W { w: self }
+            }
+            # [ doc = "Bits 0:4 - 7th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq7(&mut self) -> _Sq7W {
+                _Sq7W { w: self }
+            }
+        }
+    }
+    # [ doc = "regular sequence register 3" ]
+    pub struct Sqr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "regular sequence register 3" ]
+    pub mod sqr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sqr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq6R {
+            bits: u8,
+        }
+        impl Sq6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq5R {
+            bits: u8,
+        }
+        impl Sq5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq4R {
+            bits: u8,
+        }
+        impl Sq4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq3R {
+            bits: u8,
+        }
+        impl Sq3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq2R {
+            bits: u8,
+        }
+        impl Sq2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sq1R {
+            bits: u8,
+        }
+        impl Sq1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sq1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sq1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 25:29 - 6th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq6(&self) -> Sq6R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq6R { bits }
+            }
+            # [ doc = "Bits 20:24 - 5th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq5(&self) -> Sq5R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq5R { bits }
+            }
+            # [ doc = "Bits 15:19 - 4th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq4(&self) -> Sq4R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq4R { bits }
+            }
+            # [ doc = "Bits 10:14 - 3rd conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq3(&self) -> Sq3R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq3R { bits }
+            }
+            # [ doc = "Bits 5:9 - 2nd conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq2(&self) -> Sq2R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq2R { bits }
+            }
+            # [ doc = "Bits 0:4 - 1st conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq1(&self) -> Sq1R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sq1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 25:29 - 6th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq6(&mut self) -> _Sq6W {
+                _Sq6W { w: self }
+            }
+            # [ doc = "Bits 20:24 - 5th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq5(&mut self) -> _Sq5W {
+                _Sq5W { w: self }
+            }
+            # [ doc = "Bits 15:19 - 4th conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq4(&mut self) -> _Sq4W {
+                _Sq4W { w: self }
+            }
+            # [ doc = "Bits 10:14 - 3rd conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq3(&mut self) -> _Sq3W {
+                _Sq3W { w: self }
+            }
+            # [ doc = "Bits 5:9 - 2nd conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq2(&mut self) -> _Sq2W {
+                _Sq2W { w: self }
+            }
+            # [ doc = "Bits 0:4 - 1st conversion in regular sequence" ]
+            # [ inline ( always ) ]
+            pub fn sq1(&mut self) -> _Sq1W {
+                _Sq1W { w: self }
+            }
+        }
+    }
+    # [ doc = "injected sequence register" ]
+    pub struct Jsqr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected sequence register" ]
+    pub mod jsqr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Jsqr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JlR {
+            bits: u8,
+        }
+        impl JlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jsq4R {
+            bits: u8,
+        }
+        impl Jsq4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jsq3R {
+            bits: u8,
+        }
+        impl Jsq3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jsq2R {
+            bits: u8,
+        }
+        impl Jsq2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jsq1R {
+            bits: u8,
+        }
+        impl Jsq1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Jsq4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Jsq4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Jsq3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Jsq3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Jsq2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Jsq2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Jsq1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Jsq1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 20:21 - Injected sequence length" ]
+            # [ inline ( always ) ]
+            pub fn jl(&self) -> JlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JlR { bits }
+            }
+            # [ doc = "Bits 15:19 - 4th conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq4(&self) -> Jsq4R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jsq4R { bits }
+            }
+            # [ doc = "Bits 10:14 - 3rd conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq3(&self) -> Jsq3R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jsq3R { bits }
+            }
+            # [ doc = "Bits 5:9 - 2nd conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq2(&self) -> Jsq2R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jsq2R { bits }
+            }
+            # [ doc = "Bits 0:4 - 1st conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq1(&self) -> Jsq1R {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jsq1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 20:21 - Injected sequence length" ]
+            # [ inline ( always ) ]
+            pub fn jl(&mut self) -> _JlW {
+                _JlW { w: self }
+            }
+            # [ doc = "Bits 15:19 - 4th conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq4(&mut self) -> _Jsq4W {
+                _Jsq4W { w: self }
+            }
+            # [ doc = "Bits 10:14 - 3rd conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq3(&mut self) -> _Jsq3W {
+                _Jsq3W { w: self }
+            }
+            # [ doc = "Bits 5:9 - 2nd conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq2(&mut self) -> _Jsq2W {
+                _Jsq2W { w: self }
+            }
+            # [ doc = "Bits 0:4 - 1st conversion in injected sequence" ]
+            # [ inline ( always ) ]
+            pub fn jsq1(&mut self) -> _Jsq1W {
+                _Jsq1W { w: self }
+            }
+        }
+    }
+    # [ doc = "injected data register x" ]
+    pub struct Jdr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected data register x" ]
+    pub mod jdr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Jdr1 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdataR {
+            bits: u16,
+        }
+        impl JdataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Injected data" ]
+            # [ inline ( always ) ]
+            pub fn jdata(&self) -> JdataR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                JdataR { bits }
+            }
+        }
+    }
+    # [ doc = "injected data register x" ]
+    pub struct Jdr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected data register x" ]
+    pub mod jdr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Jdr2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdataR {
+            bits: u16,
+        }
+        impl JdataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Injected data" ]
+            # [ inline ( always ) ]
+            pub fn jdata(&self) -> JdataR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                JdataR { bits }
+            }
+        }
+    }
+    # [ doc = "injected data register x" ]
+    pub struct Jdr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected data register x" ]
+    pub mod jdr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Jdr3 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdataR {
+            bits: u16,
+        }
+        impl JdataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Injected data" ]
+            # [ inline ( always ) ]
+            pub fn jdata(&self) -> JdataR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                JdataR { bits }
+            }
+        }
+    }
+    # [ doc = "injected data register x" ]
+    pub struct Jdr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "injected data register x" ]
+    pub mod jdr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Jdr4 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdataR {
+            bits: u16,
+        }
+        impl JdataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Injected data" ]
+            # [ inline ( always ) ]
+            pub fn jdata(&self) -> JdataR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                JdataR { bits }
+            }
+        }
+    }
+    # [ doc = "regular data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "regular data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DataR {
+            bits: u16,
+        }
+        impl DataR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Regular data" ]
+            # [ inline ( always ) ]
+            pub fn data(&self) -> DataR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DataR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Analog-to-digital converter" ]
+pub struct Adc1 {
+    register_block: adc1::RegisterBlock,
+}
+impl Deref for Adc1 {
+    type Target = adc1::RegisterBlock;
+    fn deref(&self) -> &adc1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "ADC2" ]
+pub const ADC2: Peripheral<Adc2> = unsafe { Peripheral::new(1073815808) };
+# [ doc = r" Register block" ]
+pub struct Adc2 {
+    register_block: adc1::RegisterBlock,
+}
+impl Deref for Adc2 {
+    type Target = adc1::RegisterBlock;
+    fn deref(&self) -> &adc1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "ADC3" ]
+pub const ADC3: Peripheral<Adc3> = unsafe { Peripheral::new(1073816064) };
+# [ doc = r" Register block" ]
+pub struct Adc3 {
+    register_block: adc1::RegisterBlock,
+}
+impl Deref for Adc3 {
+    type Target = adc1::RegisterBlock;
+    fn deref(&self) -> &adc1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub const USART6: Peripheral<Usart6> = unsafe { Peripheral::new(1073812480) };
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub mod usart6 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Status register" ]
+        pub sr: Sr,
+        # [ doc = "0x04 - Data register" ]
+        pub dr: Dr,
+        # [ doc = "0x08 - Baud rate register" ]
+        pub brr: Brr,
+        # [ doc = "0x0c - Control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x10 - Control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x14 - Control register 3" ]
+        pub cr3: Cr3,
+        # [ doc = "0x18 - Guard time and prescaler register" ]
+        pub gtpr: Gtpr,
+    }
+    # [ doc = "Status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = "Possible values of the field `CTS`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum CtsR {
+            # [ doc = "0: No change occurred on the nCTS status line" ]
+            NoChange,
+            # [ doc = "1: A change occurred on the nCTS status line" ]
+            Change,
+        }
+        impl CtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    CtsR::NoChange => 0,
+                    CtsR::Change => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> CtsR {
+                match bits {
+                    0 => CtsR::NoChange,
+                    1 => CtsR::Change,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NoChange`" ]
+            # [ inline ( always ) ]
+            pub fn is_no_change(&self) -> bool {
+                *self == CtsR::NoChange
+            }
+            # [ doc = "Checks if the value of the field is `Change`" ]
+            # [ inline ( always ) ]
+            pub fn is_change(&self) -> bool {
+                *self == CtsR::Change
+            }
+        }
+        # [ doc = "Possible values of the field `LBD`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum LbdR {
+            # [ doc = "0: LIN Break not detected" ]
+            NotDetected,
+            # [ doc = "1: LIN break detected" ]
+            BreakDetected,
+        }
+        impl LbdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    LbdR::NotDetected => 0,
+                    LbdR::BreakDetected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> LbdR {
+                match bits {
+                    0 => LbdR::NotDetected,
+                    1 => LbdR::BreakDetected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_detected(&self) -> bool {
+                *self == LbdR::NotDetected
+            }
+            # [ doc = "Checks if the value of the field is `BreakDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_break_detected(&self) -> bool {
+                *self == LbdR::BreakDetected
+            }
+        }
+        # [ doc = "Possible values of the field `TXE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum TxeR {
+            # [ doc = "0: Data is not transferred to the shift register" ]
+            NotDetected,
+            # [ doc = "1: Data is transferred to the shift register" ]
+            BreakDetected,
+        }
+        impl TxeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    TxeR::NotDetected => 0,
+                    TxeR::BreakDetected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> TxeR {
+                match bits {
+                    0 => TxeR::NotDetected,
+                    1 => TxeR::BreakDetected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_detected(&self) -> bool {
+                *self == TxeR::NotDetected
+            }
+            # [ doc = "Checks if the value of the field is `BreakDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_break_detected(&self) -> bool {
+                *self == TxeR::BreakDetected
+            }
+        }
+        # [ doc = "Possible values of the field `TC`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum TcR {
+            # [ doc = "0: Transmission is not complete" ]
+            NotComplete,
+            # [ doc = "1: Transmission is complete" ]
+            Complete,
+        }
+        impl TcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    TcR::NotComplete => 0,
+                    TcR::Complete => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> TcR {
+                match bits {
+                    0 => TcR::NotComplete,
+                    1 => TcR::Complete,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotComplete`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_complete(&self) -> bool {
+                *self == TcR::NotComplete
+            }
+            # [ doc = "Checks if the value of the field is `Complete`" ]
+            # [ inline ( always ) ]
+            pub fn is_complete(&self) -> bool {
+                *self == TcR::Complete
+            }
+        }
+        # [ doc = "Possible values of the field `RXNE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum RxneR {
+            # [ doc = "0: Data is not received" ]
+            NotReceived,
+            # [ doc = "1: Received data is ready to be read" ]
+            DataReady,
+        }
+        impl RxneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    RxneR::NotReceived => 0,
+                    RxneR::DataReady => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> RxneR {
+                match bits {
+                    0 => RxneR::NotReceived,
+                    1 => RxneR::DataReady,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotReceived`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_received(&self) -> bool {
+                *self == RxneR::NotReceived
+            }
+            # [ doc = "Checks if the value of the field is `DataReady`" ]
+            # [ inline ( always ) ]
+            pub fn is_data_ready(&self) -> bool {
+                *self == RxneR::DataReady
+            }
+        }
+        # [ doc = "Possible values of the field `IDLE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum IdleR {
+            # [ doc = "0: No Idle Line is detected" ]
+            NotDetected,
+            # [ doc = "1: Idle Line is detected" ]
+            Detected,
+        }
+        impl IdleR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    IdleR::NotDetected => 0,
+                    IdleR::Detected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> IdleR {
+                match bits {
+                    0 => IdleR::NotDetected,
+                    1 => IdleR::Detected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_detected(&self) -> bool {
+                *self == IdleR::NotDetected
+            }
+            # [ doc = "Checks if the value of the field is `Detected`" ]
+            # [ inline ( always ) ]
+            pub fn is_detected(&self) -> bool {
+                *self == IdleR::Detected
+            }
+        }
+        # [ doc = "Possible values of the field `ORE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum OreR {
+            # [ doc = "0: No Overrun error" ]
+            NoOverrun,
+            # [ doc = "1: Overrun error is detected" ]
+            OverrunDetected,
+        }
+        impl OreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    OreR::NoOverrun => 0,
+                    OreR::OverrunDetected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> OreR {
+                match bits {
+                    0 => OreR::NoOverrun,
+                    1 => OreR::OverrunDetected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NoOverrun`" ]
+            # [ inline ( always ) ]
+            pub fn is_no_overrun(&self) -> bool {
+                *self == OreR::NoOverrun
+            }
+            # [ doc = "Checks if the value of the field is `OverrunDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_overrun_detected(&self) -> bool {
+                *self == OreR::OverrunDetected
+            }
+        }
+        # [ doc = "Possible values of the field `NF`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum NfR {
+            # [ doc = "0: No noise is detected" ]
+            NotDetected,
+            # [ doc = "1: Noise is detected" ]
+            NoiseDetected,
+        }
+        impl NfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    NfR::NotDetected => 0,
+                    NfR::NoiseDetected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> NfR {
+                match bits {
+                    0 => NfR::NotDetected,
+                    1 => NfR::NoiseDetected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_detected(&self) -> bool {
+                *self == NfR::NotDetected
+            }
+            # [ doc = "Checks if the value of the field is `NoiseDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_noise_detected(&self) -> bool {
+                *self == NfR::NoiseDetected
+            }
+        }
+        # [ doc = "Possible values of the field `FE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum FeR {
+            # [ doc = "0: No Framing error is detected" ]
+            NotDetected,
+            # [ doc = "1: Framing error or break character is detected" ]
+            FramingErrorDetected,
+        }
+        impl FeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    FeR::NotDetected => 0,
+                    FeR::FramingErrorDetected => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> FeR {
+                match bits {
+                    0 => FeR::NotDetected,
+                    1 => FeR::FramingErrorDetected,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NotDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_not_detected(&self) -> bool {
+                *self == FeR::NotDetected
+            }
+            # [ doc = "Checks if the value of the field is `FramingErrorDetected`" ]
+            # [ inline ( always ) ]
+            pub fn is_framing_error_detected(&self) -> bool {
+                *self == FeR::FramingErrorDetected
+            }
+        }
+        # [ doc = "Possible values of the field `PE`" ]
+        # [ derive ( Clone , Copy , Debug , PartialEq ) ]
+        pub enum PeR {
+            # [ doc = "0: No parity error" ]
+            NoParityError,
+            # [ doc = "1: Parity error" ]
+            ParityError,
+        }
+        impl PeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                match *self {
+                    PeR::NoParityError => 0,
+                    PeR::ParityError => 1,
+                }
+            }
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _from(bits: u8) -> PeR {
+                match bits {
+                    0 => PeR::NoParityError,
+                    1 => PeR::ParityError,
+                    _ => unreachable!(),
+                }
+            }
+            # [ doc = "Checks if the value of the field is `NoParityError`" ]
+            # [ inline ( always ) ]
+            pub fn is_no_parity_error(&self) -> bool {
+                *self == PeR::NoParityError
+            }
+            # [ doc = "Checks if the value of the field is `ParityError`" ]
+            # [ inline ( always ) ]
+            pub fn is_parity_error(&self) -> bool {
+                *self == PeR::ParityError
+            }
+        }
+        # [ doc = "Values that can be written to the field `CTS`" ]
+        pub enum CtsW {
+            # [ doc = "0: No change occurred on the nCTS status line" ]
+            NoChange,
+            # [ doc = "1: A change occurred on the nCTS status line" ]
+            Change,
+        }
+        impl CtsW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    CtsW::NoChange => 0,
+                    CtsW::Change => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtsW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: CtsW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: No change occurred on the nCTS status line" ]
+            # [ inline ( always ) ]
+            pub fn no_change(self) -> &'a mut W {
+                self.variant(CtsW::NoChange)
+            }
+            # [ doc = "1: A change occurred on the nCTS status line" ]
+            # [ inline ( always ) ]
+            pub fn change(self) -> &'a mut W {
+                self.variant(CtsW::Change)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `LBD`" ]
+        pub enum LbdW {
+            # [ doc = "0: LIN Break not detected" ]
+            NotDetected,
+            # [ doc = "1: LIN break detected" ]
+            BreakDetected,
+        }
+        impl LbdW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    LbdW::NotDetected => 0,
+                    LbdW::BreakDetected => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: LbdW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: LIN Break not detected" ]
+            # [ inline ( always ) ]
+            pub fn not_detected(self) -> &'a mut W {
+                self.variant(LbdW::NotDetected)
+            }
+            # [ doc = "1: LIN break detected" ]
+            # [ inline ( always ) ]
+            pub fn break_detected(self) -> &'a mut W {
+                self.variant(LbdW::BreakDetected)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `TC`" ]
+        pub enum TcW {
+            # [ doc = "0: Transmission is not complete" ]
+            NotComplete,
+            # [ doc = "1: Transmission is complete" ]
+            Complete,
+        }
+        impl TcW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    TcW::NotComplete => 0,
+                    TcW::Complete => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: TcW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Transmission is not complete" ]
+            # [ inline ( always ) ]
+            pub fn not_complete(self) -> &'a mut W {
+                self.variant(TcW::NotComplete)
+            }
+            # [ doc = "1: Transmission is complete" ]
+            # [ inline ( always ) ]
+            pub fn complete(self) -> &'a mut W {
+                self.variant(TcW::Complete)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = "Values that can be written to the field `RXNE`" ]
+        pub enum RxneW {
+            # [ doc = "0: Data is not received" ]
+            NotReceived,
+            # [ doc = "1: Received data is ready to be read" ]
+            DataReady,
+        }
+        impl RxneW {
+            # [ allow ( missing_docs ) ]
+            # [ doc ( hidden ) ]
+            # [ inline ( always ) ]
+            pub fn _bits(&self) -> u8 {
+                match *self {
+                    RxneW::NotReceived => 0,
+                    RxneW::DataReady => 1,
+                }
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxneW<'a> {
+            # [ doc = r" Writes `variant` to the field" ]
+            # [ inline ( always ) ]
+            pub fn variant(self, variant: RxneW) -> &'a mut W {
+                {
+                    self.bits(variant._bits())
+                }
+            }
+            # [ doc = "0: Data is not received" ]
+            # [ inline ( always ) ]
+            pub fn not_received(self) -> &'a mut W {
+                self.variant(RxneW::NotReceived)
+            }
+            # [ doc = "1: Received data is ready to be read" ]
+            # [ inline ( always ) ]
+            pub fn data_ready(self) -> &'a mut W {
+                self.variant(RxneW::DataReady)
+            }
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - CTS flag" ]
+            # [ inline ( always ) ]
+            pub fn cts(&self) -> CtsR {
+                CtsR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 9;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 8 - LIN break detection flag" ]
+            # [ inline ( always ) ]
+            pub fn lbd(&self) -> LbdR {
+                LbdR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 8;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 7 - Transmit data register empty" ]
+            # [ inline ( always ) ]
+            pub fn txe(&self) -> TxeR {
+                TxeR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 7;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 6 - Transmission complete" ]
+            # [ inline ( always ) ]
+            pub fn tc(&self) -> TcR {
+                TcR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 6;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 5 - Read data register not empty" ]
+            # [ inline ( always ) ]
+            pub fn rxne(&self) -> RxneR {
+                RxneR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 5;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 4 - IDLE line detected" ]
+            # [ inline ( always ) ]
+            pub fn idle(&self) -> IdleR {
+                IdleR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 4;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 3 - Overrun error" ]
+            # [ inline ( always ) ]
+            pub fn ore(&self) -> OreR {
+                OreR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 3;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 2 - Noise detected flag" ]
+            # [ inline ( always ) ]
+            pub fn nf(&self) -> NfR {
+                NfR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 2;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 1 - Framing error" ]
+            # [ inline ( always ) ]
+            pub fn fe(&self) -> FeR {
+                FeR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 1;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+            # [ doc = "Bit 0 - Parity error" ]
+            # [ inline ( always ) ]
+            pub fn pe(&self) -> PeR {
+                PeR::_from(
+                    {
+                        const MASK: u8 = 1;
+                        const OFFSET: u8 = 0;
+                        ((self.bits >> OFFSET) & MASK as u32) as u8
+                    },
+                )
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12582912 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - CTS flag" ]
+            # [ inline ( always ) ]
+            pub fn cts(&mut self) -> _CtsW {
+                _CtsW { w: self }
+            }
+            # [ doc = "Bit 8 - LIN break detection flag" ]
+            # [ inline ( always ) ]
+            pub fn lbd(&mut self) -> _LbdW {
+                _LbdW { w: self }
+            }
+            # [ doc = "Bit 6 - Transmission complete" ]
+            # [ inline ( always ) ]
+            pub fn tc(&mut self) -> _TcW {
+                _TcW { w: self }
+            }
+            # [ doc = "Bit 5 - Read data register not empty" ]
+            # [ inline ( always ) ]
+            pub fn rxne(&mut self) -> _RxneW {
+                _RxneW { w: self }
+            }
+        }
+    }
+    # [ doc = "Data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrR {
+            bits: u16,
+        }
+        impl DrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:8 - Data value" ]
+            # [ inline ( always ) ]
+            pub fn dr(&self) -> DrR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:8 - Data value" ]
+            # [ inline ( always ) ]
+            pub fn dr(&mut self) -> _DrW {
+                _DrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Baud rate register" ]
+    pub struct Brr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Baud rate register" ]
+    pub mod brr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Brr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DivMantissaR {
+            bits: u16,
+        }
+        impl DivMantissaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DivFractionR {
+            bits: u8,
+        }
+        impl DivFractionR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DivMantissaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DivMantissaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DivFractionW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DivFractionW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:15 - mantissa of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_mantissa(&self) -> DivMantissaR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DivMantissaR { bits }
+            }
+            # [ doc = "Bits 0:3 - fraction of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_fraction(&self) -> DivFractionR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DivFractionR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:15 - mantissa of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_mantissa(&mut self) -> _DivMantissaW {
+                _DivMantissaW { w: self }
+            }
+            # [ doc = "Bits 0:3 - fraction of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_fraction(&mut self) -> _DivFractionW {
+                _DivFractionW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Over8R {
+            bits: u8,
+        }
+        impl Over8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UeR {
+            bits: u8,
+        }
+        impl UeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MR {
+            bits: u8,
+        }
+        impl MR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WakeR {
+            bits: u8,
+        }
+        impl WakeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PceR {
+            bits: u8,
+        }
+        impl PceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsR {
+            bits: u8,
+        }
+        impl PsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PeieR {
+            bits: u8,
+        }
+        impl PeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxeieR {
+            bits: u8,
+        }
+        impl TxeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxneieR {
+            bits: u8,
+        }
+        impl RxneieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdleieR {
+            bits: u8,
+        }
+        impl IdleieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeR {
+            bits: u8,
+        }
+        impl TeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ReR {
+            bits: u8,
+        }
+        impl ReR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwuR {
+            bits: u8,
+        }
+        impl RwuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SbkR {
+            bits: u8,
+        }
+        impl SbkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Over8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Over8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WakeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WakeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxneieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxneieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdleieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdleieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ReW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ReW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SbkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SbkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Oversampling mode" ]
+            # [ inline ( always ) ]
+            pub fn over8(&self) -> Over8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Over8R { bits }
+            }
+            # [ doc = "Bit 13 - USART enable" ]
+            # [ inline ( always ) ]
+            pub fn ue(&self) -> UeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UeR { bits }
+            }
+            # [ doc = "Bit 12 - Word length" ]
+            # [ inline ( always ) ]
+            pub fn m(&self) -> MR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MR { bits }
+            }
+            # [ doc = "Bit 11 - Wakeup method" ]
+            # [ inline ( always ) ]
+            pub fn wake(&self) -> WakeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WakeR { bits }
+            }
+            # [ doc = "Bit 10 - Parity control enable" ]
+            # [ inline ( always ) ]
+            pub fn pce(&self) -> PceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PceR { bits }
+            }
+            # [ doc = "Bit 9 - Parity selection" ]
+            # [ inline ( always ) ]
+            pub fn ps(&self) -> PsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsR { bits }
+            }
+            # [ doc = "Bit 8 - PE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn peie(&self) -> PeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PeieR { bits }
+            }
+            # [ doc = "Bit 7 - TXE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&self) -> TxeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxeieR { bits }
+            }
+            # [ doc = "Bit 6 - Transmission complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 5 - RXNE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&self) -> RxneieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxneieR { bits }
+            }
+            # [ doc = "Bit 4 - IDLE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn idleie(&self) -> IdleieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdleieR { bits }
+            }
+            # [ doc = "Bit 3 - Transmitter enable" ]
+            # [ inline ( always ) ]
+            pub fn te(&self) -> TeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeR { bits }
+            }
+            # [ doc = "Bit 2 - Receiver enable" ]
+            # [ inline ( always ) ]
+            pub fn re(&self) -> ReR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ReR { bits }
+            }
+            # [ doc = "Bit 1 - Receiver wakeup" ]
+            # [ inline ( always ) ]
+            pub fn rwu(&self) -> RwuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwuR { bits }
+            }
+            # [ doc = "Bit 0 - Send break" ]
+            # [ inline ( always ) ]
+            pub fn sbk(&self) -> SbkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SbkR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Oversampling mode" ]
+            # [ inline ( always ) ]
+            pub fn over8(&mut self) -> _Over8W {
+                _Over8W { w: self }
+            }
+            # [ doc = "Bit 13 - USART enable" ]
+            # [ inline ( always ) ]
+            pub fn ue(&mut self) -> _UeW {
+                _UeW { w: self }
+            }
+            # [ doc = "Bit 12 - Word length" ]
+            # [ inline ( always ) ]
+            pub fn m(&mut self) -> _MW {
+                _MW { w: self }
+            }
+            # [ doc = "Bit 11 - Wakeup method" ]
+            # [ inline ( always ) ]
+            pub fn wake(&mut self) -> _WakeW {
+                _WakeW { w: self }
+            }
+            # [ doc = "Bit 10 - Parity control enable" ]
+            # [ inline ( always ) ]
+            pub fn pce(&mut self) -> _PceW {
+                _PceW { w: self }
+            }
+            # [ doc = "Bit 9 - Parity selection" ]
+            # [ inline ( always ) ]
+            pub fn ps(&mut self) -> _PsW {
+                _PsW { w: self }
+            }
+            # [ doc = "Bit 8 - PE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn peie(&mut self) -> _PeieW {
+                _PeieW { w: self }
+            }
+            # [ doc = "Bit 7 - TXE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&mut self) -> _TxeieW {
+                _TxeieW { w: self }
+            }
+            # [ doc = "Bit 6 - Transmission complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 5 - RXNE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&mut self) -> _RxneieW {
+                _RxneieW { w: self }
+            }
+            # [ doc = "Bit 4 - IDLE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn idleie(&mut self) -> _IdleieW {
+                _IdleieW { w: self }
+            }
+            # [ doc = "Bit 3 - Transmitter enable" ]
+            # [ inline ( always ) ]
+            pub fn te(&mut self) -> _TeW {
+                _TeW { w: self }
+            }
+            # [ doc = "Bit 2 - Receiver enable" ]
+            # [ inline ( always ) ]
+            pub fn re(&mut self) -> _ReW {
+                _ReW { w: self }
+            }
+            # [ doc = "Bit 1 - Receiver wakeup" ]
+            # [ inline ( always ) ]
+            pub fn rwu(&mut self) -> _RwuW {
+                _RwuW { w: self }
+            }
+            # [ doc = "Bit 0 - Send break" ]
+            # [ inline ( always ) ]
+            pub fn sbk(&mut self) -> _SbkW {
+                _SbkW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LinenR {
+            bits: u8,
+        }
+        impl LinenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StopR {
+            bits: u8,
+        }
+        impl StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ClkenR {
+            bits: u8,
+        }
+        impl ClkenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CpolR {
+            bits: u8,
+        }
+        impl CpolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CphaR {
+            bits: u8,
+        }
+        impl CphaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbclR {
+            bits: u8,
+        }
+        impl LbclR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbdieR {
+            bits: u8,
+        }
+        impl LbdieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbdlR {
+            bits: u8,
+        }
+        impl LbdlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddR {
+            bits: u8,
+        }
+        impl AddR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LinenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LinenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ClkenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ClkenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CpolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CpolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CphaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CphaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbclW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbclW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - LIN mode enable" ]
+            # [ inline ( always ) ]
+            pub fn linen(&self) -> LinenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LinenR { bits }
+            }
+            # [ doc = "Bits 12:13 - STOP bits" ]
+            # [ inline ( always ) ]
+            pub fn stop(&self) -> StopR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StopR { bits }
+            }
+            # [ doc = "Bit 11 - Clock enable" ]
+            # [ inline ( always ) ]
+            pub fn clken(&self) -> ClkenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ClkenR { bits }
+            }
+            # [ doc = "Bit 10 - Clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn cpol(&self) -> CpolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CpolR { bits }
+            }
+            # [ doc = "Bit 9 - Clock phase" ]
+            # [ inline ( always ) ]
+            pub fn cpha(&self) -> CphaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CphaR { bits }
+            }
+            # [ doc = "Bit 8 - Last bit clock pulse" ]
+            # [ inline ( always ) ]
+            pub fn lbcl(&self) -> LbclR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbclR { bits }
+            }
+            # [ doc = "Bit 6 - LIN break detection interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lbdie(&self) -> LbdieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbdieR { bits }
+            }
+            # [ doc = "Bit 5 - lin break detection length" ]
+            # [ inline ( always ) ]
+            pub fn lbdl(&self) -> LbdlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbdlR { bits }
+            }
+            # [ doc = "Bits 0:3 - Address of the USART node" ]
+            # [ inline ( always ) ]
+            pub fn add(&self) -> AddR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - LIN mode enable" ]
+            # [ inline ( always ) ]
+            pub fn linen(&mut self) -> _LinenW {
+                _LinenW { w: self }
+            }
+            # [ doc = "Bits 12:13 - STOP bits" ]
+            # [ inline ( always ) ]
+            pub fn stop(&mut self) -> _StopW {
+                _StopW { w: self }
+            }
+            # [ doc = "Bit 11 - Clock enable" ]
+            # [ inline ( always ) ]
+            pub fn clken(&mut self) -> _ClkenW {
+                _ClkenW { w: self }
+            }
+            # [ doc = "Bit 10 - Clock polarity" ]
+            # [ inline ( always ) ]
+            pub fn cpol(&mut self) -> _CpolW {
+                _CpolW { w: self }
+            }
+            # [ doc = "Bit 9 - Clock phase" ]
+            # [ inline ( always ) ]
+            pub fn cpha(&mut self) -> _CphaW {
+                _CphaW { w: self }
+            }
+            # [ doc = "Bit 8 - Last bit clock pulse" ]
+            # [ inline ( always ) ]
+            pub fn lbcl(&mut self) -> _LbclW {
+                _LbclW { w: self }
+            }
+            # [ doc = "Bit 6 - LIN break detection interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lbdie(&mut self) -> _LbdieW {
+                _LbdieW { w: self }
+            }
+            # [ doc = "Bit 5 - lin break detection length" ]
+            # [ inline ( always ) ]
+            pub fn lbdl(&mut self) -> _LbdlW {
+                _LbdlW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Address of the USART node" ]
+            # [ inline ( always ) ]
+            pub fn add(&mut self) -> _AddW {
+                _AddW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 3" ]
+    pub struct Cr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 3" ]
+    pub mod cr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OnebitR {
+            bits: u8,
+        }
+        impl OnebitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtsieR {
+            bits: u8,
+        }
+        impl CtsieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtseR {
+            bits: u8,
+        }
+        impl CtseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtseR {
+            bits: u8,
+        }
+        impl RtseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmatR {
+            bits: u8,
+        }
+        impl DmatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmarR {
+            bits: u8,
+        }
+        impl DmarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ScenR {
+            bits: u8,
+        }
+        impl ScenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NackR {
+            bits: u8,
+        }
+        impl NackR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HdselR {
+            bits: u8,
+        }
+        impl HdselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrlpR {
+            bits: u8,
+        }
+        impl IrlpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrenR {
+            bits: u8,
+        }
+        impl IrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EieR {
+            bits: u8,
+        }
+        impl EieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OnebitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OnebitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtsieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtsieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ScenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ScenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NackW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NackW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HdselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HdselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrlpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrlpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 11 - One sample bit method enable" ]
+            # [ inline ( always ) ]
+            pub fn onebit(&self) -> OnebitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OnebitR { bits }
+            }
+            # [ doc = "Bit 10 - CTS interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ctsie(&self) -> CtsieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtsieR { bits }
+            }
+            # [ doc = "Bit 9 - CTS enable" ]
+            # [ inline ( always ) ]
+            pub fn ctse(&self) -> CtseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtseR { bits }
+            }
+            # [ doc = "Bit 8 - RTS enable" ]
+            # [ inline ( always ) ]
+            pub fn rtse(&self) -> RtseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtseR { bits }
+            }
+            # [ doc = "Bit 7 - DMA enable transmitter" ]
+            # [ inline ( always ) ]
+            pub fn dmat(&self) -> DmatR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmatR { bits }
+            }
+            # [ doc = "Bit 6 - DMA enable receiver" ]
+            # [ inline ( always ) ]
+            pub fn dmar(&self) -> DmarR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmarR { bits }
+            }
+            # [ doc = "Bit 5 - Smartcard mode enable" ]
+            # [ inline ( always ) ]
+            pub fn scen(&self) -> ScenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ScenR { bits }
+            }
+            # [ doc = "Bit 4 - Smartcard NACK enable" ]
+            # [ inline ( always ) ]
+            pub fn nack(&self) -> NackR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NackR { bits }
+            }
+            # [ doc = "Bit 3 - Half-duplex selection" ]
+            # [ inline ( always ) ]
+            pub fn hdsel(&self) -> HdselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HdselR { bits }
+            }
+            # [ doc = "Bit 2 - IrDA low-power" ]
+            # [ inline ( always ) ]
+            pub fn irlp(&self) -> IrlpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrlpR { bits }
+            }
+            # [ doc = "Bit 1 - IrDA mode enable" ]
+            # [ inline ( always ) ]
+            pub fn iren(&self) -> IrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrenR { bits }
+            }
+            # [ doc = "Bit 0 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eie(&self) -> EieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 11 - One sample bit method enable" ]
+            # [ inline ( always ) ]
+            pub fn onebit(&mut self) -> _OnebitW {
+                _OnebitW { w: self }
+            }
+            # [ doc = "Bit 10 - CTS interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn ctsie(&mut self) -> _CtsieW {
+                _CtsieW { w: self }
+            }
+            # [ doc = "Bit 9 - CTS enable" ]
+            # [ inline ( always ) ]
+            pub fn ctse(&mut self) -> _CtseW {
+                _CtseW { w: self }
+            }
+            # [ doc = "Bit 8 - RTS enable" ]
+            # [ inline ( always ) ]
+            pub fn rtse(&mut self) -> _RtseW {
+                _RtseW { w: self }
+            }
+            # [ doc = "Bit 7 - DMA enable transmitter" ]
+            # [ inline ( always ) ]
+            pub fn dmat(&mut self) -> _DmatW {
+                _DmatW { w: self }
+            }
+            # [ doc = "Bit 6 - DMA enable receiver" ]
+            # [ inline ( always ) ]
+            pub fn dmar(&mut self) -> _DmarW {
+                _DmarW { w: self }
+            }
+            # [ doc = "Bit 5 - Smartcard mode enable" ]
+            # [ inline ( always ) ]
+            pub fn scen(&mut self) -> _ScenW {
+                _ScenW { w: self }
+            }
+            # [ doc = "Bit 4 - Smartcard NACK enable" ]
+            # [ inline ( always ) ]
+            pub fn nack(&mut self) -> _NackW {
+                _NackW { w: self }
+            }
+            # [ doc = "Bit 3 - Half-duplex selection" ]
+            # [ inline ( always ) ]
+            pub fn hdsel(&mut self) -> _HdselW {
+                _HdselW { w: self }
+            }
+            # [ doc = "Bit 2 - IrDA low-power" ]
+            # [ inline ( always ) ]
+            pub fn irlp(&mut self) -> _IrlpW {
+                _IrlpW { w: self }
+            }
+            # [ doc = "Bit 1 - IrDA mode enable" ]
+            # [ inline ( always ) ]
+            pub fn iren(&mut self) -> _IrenW {
+                _IrenW { w: self }
+            }
+            # [ doc = "Bit 0 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eie(&mut self) -> _EieW {
+                _EieW { w: self }
+            }
+        }
+    }
+    # [ doc = "Guard time and prescaler register" ]
+    pub struct Gtpr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Guard time and prescaler register" ]
+    pub mod gtpr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Gtpr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GtR {
+            bits: u8,
+        }
+        impl GtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u8,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:15 - Guard time value" ]
+            # [ inline ( always ) ]
+            pub fn gt(&self) -> GtR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GtR { bits }
+            }
+            # [ doc = "Bits 0:7 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:15 - Guard time value" ]
+            # [ inline ( always ) ]
+            pub fn gt(&mut self) -> _GtW {
+                _GtW { w: self }
+            }
+            # [ doc = "Bits 0:7 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub struct Usart6 {
+    register_block: usart6::RegisterBlock,
+}
+impl Deref for Usart6 {
+    type Target = usart6::RegisterBlock;
+    fn deref(&self) -> &usart6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USART1" ]
+pub const USART1: Peripheral<Usart1> = unsafe { Peripheral::new(1073811456) };
+# [ doc = r" Register block" ]
+pub struct Usart1 {
+    register_block: usart6::RegisterBlock,
+}
+impl Deref for Usart1 {
+    type Target = usart6::RegisterBlock;
+    fn deref(&self) -> &usart6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USART2" ]
+pub const USART2: Peripheral<Usart2> = unsafe { Peripheral::new(1073759232) };
+# [ doc = r" Register block" ]
+pub struct Usart2 {
+    register_block: usart6::RegisterBlock,
+}
+impl Deref for Usart2 {
+    type Target = usart6::RegisterBlock;
+    fn deref(&self) -> &usart6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USART3" ]
+pub const USART3: Peripheral<Usart3> = unsafe { Peripheral::new(1073760256) };
+# [ doc = r" Register block" ]
+pub struct Usart3 {
+    register_block: usart6::RegisterBlock,
+}
+impl Deref for Usart3 {
+    type Target = usart6::RegisterBlock;
+    fn deref(&self) -> &usart6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Digital-to-analog converter" ]
+pub const DAC: Peripheral<Dac> = unsafe { Peripheral::new(1073771520) };
+# [ doc = "Digital-to-analog converter" ]
+pub mod dac {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - software trigger register" ]
+        pub swtrigr: Swtrigr,
+        # [ doc = "0x08 - channel1 12-bit right-aligned data holding register" ]
+        pub dhr12r1: Dhr12r1,
+        # [ doc = "0x0c - channel1 12-bit left aligned data holding register" ]
+        pub dhr12l1: Dhr12l1,
+        # [ doc = "0x10 - channel1 8-bit right aligned data holding register" ]
+        pub dhr8r1: Dhr8r1,
+        # [ doc = "0x14 - channel2 12-bit right aligned data holding register" ]
+        pub dhr12r2: Dhr12r2,
+        # [ doc = "0x18 - channel2 12-bit left aligned data holding register" ]
+        pub dhr12l2: Dhr12l2,
+        # [ doc = "0x1c - channel2 8-bit right-aligned data holding register" ]
+        pub dhr8r2: Dhr8r2,
+        # [ doc = "0x20 - Dual DAC 12-bit right-aligned data holding register" ]
+        pub dhr12rd: Dhr12rd,
+        # [ doc = "0x24 - DUAL DAC 12-bit left aligned data holding register" ]
+        pub dhr12ld: Dhr12ld,
+        # [ doc = "0x28 - DUAL DAC 8-bit right aligned data holding register" ]
+        pub dhr8rd: Dhr8rd,
+        # [ doc = "0x2c - channel1 data output register" ]
+        pub dor1: Dor1,
+        # [ doc = "0x30 - channel2 data output register" ]
+        pub dor2: Dor2,
+        # [ doc = "0x34 - status register" ]
+        pub sr: Sr,
+    }
+    # [ doc = "control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaudrie2R {
+            bits: u8,
+        }
+        impl Dmaudrie2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaen2R {
+            bits: u8,
+        }
+        impl Dmaen2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mamp2R {
+            bits: u8,
+        }
+        impl Mamp2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Wave2R {
+            bits: u8,
+        }
+        impl Wave2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tsel2R {
+            bits: u8,
+        }
+        impl Tsel2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ten2R {
+            bits: u8,
+        }
+        impl Ten2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Boff2R {
+            bits: u8,
+        }
+        impl Boff2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct En2R {
+            bits: u8,
+        }
+        impl En2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaudrie1R {
+            bits: u8,
+        }
+        impl Dmaudrie1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaen1R {
+            bits: u8,
+        }
+        impl Dmaen1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mamp1R {
+            bits: u8,
+        }
+        impl Mamp1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Wave1R {
+            bits: u8,
+        }
+        impl Wave1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tsel1R {
+            bits: u8,
+        }
+        impl Tsel1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ten1R {
+            bits: u8,
+        }
+        impl Ten1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Boff1R {
+            bits: u8,
+        }
+        impl Boff1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct En1R {
+            bits: u8,
+        }
+        impl En1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaudrie2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaudrie2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaen2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaen2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mamp2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mamp2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Wave2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Wave2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tsel2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tsel2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ten2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ten2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Boff2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Boff2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _En2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _En2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaudrie1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaudrie1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaen1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaen1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mamp1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mamp1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Wave1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Wave1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tsel1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tsel1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ten1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ten1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Boff1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Boff1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _En1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _En1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - DAC channel2 DMA underrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaudrie2(&self) -> Dmaudrie2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaudrie2R { bits }
+            }
+            # [ doc = "Bit 28 - DAC channel2 DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen2(&self) -> Dmaen2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaen2R { bits }
+            }
+            # [ doc = "Bits 24:27 - DAC channel2 mask/amplitude selector" ]
+            # [ inline ( always ) ]
+            pub fn mamp2(&self) -> Mamp2R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mamp2R { bits }
+            }
+            # [ doc = "Bits 22:23 - DAC channel2 noise/triangle wave generation enable" ]
+            # [ inline ( always ) ]
+            pub fn wave2(&self) -> Wave2R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Wave2R { bits }
+            }
+            # [ doc = "Bits 19:21 - DAC channel2 trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn tsel2(&self) -> Tsel2R {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tsel2R { bits }
+            }
+            # [ doc = "Bit 18 - DAC channel2 trigger enable" ]
+            # [ inline ( always ) ]
+            pub fn ten2(&self) -> Ten2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ten2R { bits }
+            }
+            # [ doc = "Bit 17 - DAC channel2 output buffer disable" ]
+            # [ inline ( always ) ]
+            pub fn boff2(&self) -> Boff2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Boff2R { bits }
+            }
+            # [ doc = "Bit 16 - DAC channel2 enable" ]
+            # [ inline ( always ) ]
+            pub fn en2(&self) -> En2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                En2R { bits }
+            }
+            # [ doc = "Bit 13 - DAC channel1 DMA Underrun Interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaudrie1(&self) -> Dmaudrie1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaudrie1R { bits }
+            }
+            # [ doc = "Bit 12 - DAC channel1 DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen1(&self) -> Dmaen1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaen1R { bits }
+            }
+            # [ doc = "Bits 8:11 - DAC channel1 mask/amplitude selector" ]
+            # [ inline ( always ) ]
+            pub fn mamp1(&self) -> Mamp1R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mamp1R { bits }
+            }
+            # [ doc = "Bits 6:7 - DAC channel1 noise/triangle wave generation enable" ]
+            # [ inline ( always ) ]
+            pub fn wave1(&self) -> Wave1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Wave1R { bits }
+            }
+            # [ doc = "Bits 3:5 - DAC channel1 trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn tsel1(&self) -> Tsel1R {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tsel1R { bits }
+            }
+            # [ doc = "Bit 2 - DAC channel1 trigger enable" ]
+            # [ inline ( always ) ]
+            pub fn ten1(&self) -> Ten1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ten1R { bits }
+            }
+            # [ doc = "Bit 1 - DAC channel1 output buffer disable" ]
+            # [ inline ( always ) ]
+            pub fn boff1(&self) -> Boff1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Boff1R { bits }
+            }
+            # [ doc = "Bit 0 - DAC channel1 enable" ]
+            # [ inline ( always ) ]
+            pub fn en1(&self) -> En1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                En1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - DAC channel2 DMA underrun interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaudrie2(&mut self) -> _Dmaudrie2W {
+                _Dmaudrie2W { w: self }
+            }
+            # [ doc = "Bit 28 - DAC channel2 DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen2(&mut self) -> _Dmaen2W {
+                _Dmaen2W { w: self }
+            }
+            # [ doc = "Bits 24:27 - DAC channel2 mask/amplitude selector" ]
+            # [ inline ( always ) ]
+            pub fn mamp2(&mut self) -> _Mamp2W {
+                _Mamp2W { w: self }
+            }
+            # [ doc = "Bits 22:23 - DAC channel2 noise/triangle wave generation enable" ]
+            # [ inline ( always ) ]
+            pub fn wave2(&mut self) -> _Wave2W {
+                _Wave2W { w: self }
+            }
+            # [ doc = "Bits 19:21 - DAC channel2 trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn tsel2(&mut self) -> _Tsel2W {
+                _Tsel2W { w: self }
+            }
+            # [ doc = "Bit 18 - DAC channel2 trigger enable" ]
+            # [ inline ( always ) ]
+            pub fn ten2(&mut self) -> _Ten2W {
+                _Ten2W { w: self }
+            }
+            # [ doc = "Bit 17 - DAC channel2 output buffer disable" ]
+            # [ inline ( always ) ]
+            pub fn boff2(&mut self) -> _Boff2W {
+                _Boff2W { w: self }
+            }
+            # [ doc = "Bit 16 - DAC channel2 enable" ]
+            # [ inline ( always ) ]
+            pub fn en2(&mut self) -> _En2W {
+                _En2W { w: self }
+            }
+            # [ doc = "Bit 13 - DAC channel1 DMA Underrun Interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaudrie1(&mut self) -> _Dmaudrie1W {
+                _Dmaudrie1W { w: self }
+            }
+            # [ doc = "Bit 12 - DAC channel1 DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen1(&mut self) -> _Dmaen1W {
+                _Dmaen1W { w: self }
+            }
+            # [ doc = "Bits 8:11 - DAC channel1 mask/amplitude selector" ]
+            # [ inline ( always ) ]
+            pub fn mamp1(&mut self) -> _Mamp1W {
+                _Mamp1W { w: self }
+            }
+            # [ doc = "Bits 6:7 - DAC channel1 noise/triangle wave generation enable" ]
+            # [ inline ( always ) ]
+            pub fn wave1(&mut self) -> _Wave1W {
+                _Wave1W { w: self }
+            }
+            # [ doc = "Bits 3:5 - DAC channel1 trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn tsel1(&mut self) -> _Tsel1W {
+                _Tsel1W { w: self }
+            }
+            # [ doc = "Bit 2 - DAC channel1 trigger enable" ]
+            # [ inline ( always ) ]
+            pub fn ten1(&mut self) -> _Ten1W {
+                _Ten1W { w: self }
+            }
+            # [ doc = "Bit 1 - DAC channel1 output buffer disable" ]
+            # [ inline ( always ) ]
+            pub fn boff1(&mut self) -> _Boff1W {
+                _Boff1W { w: self }
+            }
+            # [ doc = "Bit 0 - DAC channel1 enable" ]
+            # [ inline ( always ) ]
+            pub fn en1(&mut self) -> _En1W {
+                _En1W { w: self }
+            }
+        }
+    }
+    # [ doc = "software trigger register" ]
+    pub struct Swtrigr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "software trigger register" ]
+    pub mod swtrigr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Swtrigr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swtrig2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swtrig2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swtrig1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swtrig1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - DAC channel2 software trigger" ]
+            # [ inline ( always ) ]
+            pub fn swtrig2(&mut self) -> _Swtrig2W {
+                _Swtrig2W { w: self }
+            }
+            # [ doc = "Bit 0 - DAC channel1 software trigger" ]
+            # [ inline ( always ) ]
+            pub fn swtrig1(&mut self) -> _Swtrig1W {
+                _Swtrig1W { w: self }
+            }
+        }
+    }
+    # [ doc = "channel1 12-bit right-aligned data holding register" ]
+    pub struct Dhr12r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel1 12-bit right-aligned data holding register" ]
+    pub mod dhr12r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u16,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel1 12-bit left aligned data holding register" ]
+    pub struct Dhr12l1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel1 12-bit left aligned data holding register" ]
+    pub mod dhr12l1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12l1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u16,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel1 8-bit right aligned data holding register" ]
+    pub struct Dhr8r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel1 8-bit right aligned data holding register" ]
+    pub mod dhr8r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr8r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u8,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel2 12-bit right aligned data holding register" ]
+    pub struct Dhr12r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel2 12-bit right aligned data holding register" ]
+    pub mod dhr12r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u16,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - DAC channel2 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc2dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - DAC channel2 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel2 12-bit left aligned data holding register" ]
+    pub struct Dhr12l2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel2 12-bit left aligned data holding register" ]
+    pub mod dhr12l2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12l2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u16,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:15 - DAC channel2 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc2dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:15 - DAC channel2 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel2 8-bit right-aligned data holding register" ]
+    pub struct Dhr8r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel2 8-bit right-aligned data holding register" ]
+    pub mod dhr8r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr8r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u8,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - DAC channel2 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dacc2dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - DAC channel2 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Dual DAC 12-bit right-aligned data holding register" ]
+    pub struct Dhr12rd {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Dual DAC 12-bit right-aligned data holding register" ]
+    pub mod dhr12rd {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12rd {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u16,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u16,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:27 - DAC channel2 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc2dhrR { bits }
+            }
+            # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:27 - DAC channel2 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+            # [ doc = "Bits 0:11 - DAC channel1 12-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "DUAL DAC 12-bit left aligned data holding register" ]
+    pub struct Dhr12ld {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DUAL DAC 12-bit left aligned data holding register" ]
+    pub mod dhr12ld {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr12ld {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u16,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u16,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 20:31 - DAC channel2 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc2dhrR { bits }
+            }
+            # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 20:31 - DAC channel2 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+            # [ doc = "Bits 4:15 - DAC channel1 12-bit left-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "DUAL DAC 8-bit right aligned data holding register" ]
+    pub struct Dhr8rd {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DUAL DAC 8-bit right aligned data holding register" ]
+    pub mod dhr8rd {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dhr8rd {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dhrR {
+            bits: u8,
+        }
+        impl Dacc2dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dhrR {
+            bits: u8,
+        }
+        impl Dacc1dhrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc2dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc2dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dacc1dhrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dacc1dhrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:15 - DAC channel2 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&self) -> Dacc2dhrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dacc2dhrR { bits }
+            }
+            # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&self) -> Dacc1dhrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dacc1dhrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:15 - DAC channel2 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dhr(&mut self) -> _Dacc2dhrW {
+                _Dacc2dhrW { w: self }
+            }
+            # [ doc = "Bits 0:7 - DAC channel1 8-bit right-aligned data" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dhr(&mut self) -> _Dacc1dhrW {
+                _Dacc1dhrW { w: self }
+            }
+        }
+    }
+    # [ doc = "channel1 data output register" ]
+    pub struct Dor1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel1 data output register" ]
+    pub mod dor1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dor1 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc1dorR {
+            bits: u16,
+        }
+        impl Dacc1dorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - DAC channel1 data output" ]
+            # [ inline ( always ) ]
+            pub fn dacc1dor(&self) -> Dacc1dorR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc1dorR { bits }
+            }
+        }
+    }
+    # [ doc = "channel2 data output register" ]
+    pub struct Dor2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "channel2 data output register" ]
+    pub mod dor2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dor2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dacc2dorR {
+            bits: u16,
+        }
+        impl Dacc2dorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - DAC channel2 data output" ]
+            # [ inline ( always ) ]
+            pub fn dacc2dor(&self) -> Dacc2dorR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Dacc2dorR { bits }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaudr2R {
+            bits: u8,
+        }
+        impl Dmaudr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Dmaudr1R {
+            bits: u8,
+        }
+        impl Dmaudr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaudr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaudr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Dmaudr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Dmaudr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 29 - DAC channel2 DMA underrun flag" ]
+            # [ inline ( always ) ]
+            pub fn dmaudr2(&self) -> Dmaudr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaudr2R { bits }
+            }
+            # [ doc = "Bit 13 - DAC channel1 DMA underrun flag" ]
+            # [ inline ( always ) ]
+            pub fn dmaudr1(&self) -> Dmaudr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Dmaudr1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 29 - DAC channel2 DMA underrun flag" ]
+            # [ inline ( always ) ]
+            pub fn dmaudr2(&mut self) -> _Dmaudr2W {
+                _Dmaudr2W { w: self }
+            }
+            # [ doc = "Bit 13 - DAC channel1 DMA underrun flag" ]
+            # [ inline ( always ) ]
+            pub fn dmaudr1(&mut self) -> _Dmaudr1W {
+                _Dmaudr1W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Digital-to-analog converter" ]
+pub struct Dac {
+    register_block: dac::RegisterBlock,
+}
+impl Deref for Dac {
+    type Target = dac::RegisterBlock;
+    fn deref(&self) -> &dac::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Power control" ]
+pub const PWR: Peripheral<Pwr> = unsafe { Peripheral::new(1073770496) };
+# [ doc = "Power control" ]
+pub mod pwr {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - power control register" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - power control/status register" ]
+        pub csr: Csr,
+    }
+    # [ doc = "power control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "power control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FpdsR {
+            bits: u8,
+        }
+        impl FpdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbpR {
+            bits: u8,
+        }
+        impl DbpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlsR {
+            bits: u8,
+        }
+        impl PlsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PvdeR {
+            bits: u8,
+        }
+        impl PvdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsbfR {
+            bits: u8,
+        }
+        impl CsbfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CwufR {
+            bits: u8,
+        }
+        impl CwufR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PddsR {
+            bits: u8,
+        }
+        impl PddsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LpdsR {
+            bits: u8,
+        }
+        impl LpdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FpdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FpdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PlsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PlsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PvdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PvdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsbfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsbfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CwufW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CwufW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PddsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PddsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LpdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LpdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - Flash power down in Stop mode" ]
+            # [ inline ( always ) ]
+            pub fn fpds(&self) -> FpdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FpdsR { bits }
+            }
+            # [ doc = "Bit 8 - Disable backup domain write protection" ]
+            # [ inline ( always ) ]
+            pub fn dbp(&self) -> DbpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbpR { bits }
+            }
+            # [ doc = "Bits 5:7 - PVD level selection" ]
+            # [ inline ( always ) ]
+            pub fn pls(&self) -> PlsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlsR { bits }
+            }
+            # [ doc = "Bit 4 - Power voltage detector enable" ]
+            # [ inline ( always ) ]
+            pub fn pvde(&self) -> PvdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PvdeR { bits }
+            }
+            # [ doc = "Bit 3 - Clear standby flag" ]
+            # [ inline ( always ) ]
+            pub fn csbf(&self) -> CsbfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsbfR { bits }
+            }
+            # [ doc = "Bit 2 - Clear wakeup flag" ]
+            # [ inline ( always ) ]
+            pub fn cwuf(&self) -> CwufR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CwufR { bits }
+            }
+            # [ doc = "Bit 1 - Power down deepsleep" ]
+            # [ inline ( always ) ]
+            pub fn pdds(&self) -> PddsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PddsR { bits }
+            }
+            # [ doc = "Bit 0 - Low-power deep sleep" ]
+            # [ inline ( always ) ]
+            pub fn lpds(&self) -> LpdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LpdsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - Flash power down in Stop mode" ]
+            # [ inline ( always ) ]
+            pub fn fpds(&mut self) -> _FpdsW {
+                _FpdsW { w: self }
+            }
+            # [ doc = "Bit 8 - Disable backup domain write protection" ]
+            # [ inline ( always ) ]
+            pub fn dbp(&mut self) -> _DbpW {
+                _DbpW { w: self }
+            }
+            # [ doc = "Bits 5:7 - PVD level selection" ]
+            # [ inline ( always ) ]
+            pub fn pls(&mut self) -> _PlsW {
+                _PlsW { w: self }
+            }
+            # [ doc = "Bit 4 - Power voltage detector enable" ]
+            # [ inline ( always ) ]
+            pub fn pvde(&mut self) -> _PvdeW {
+                _PvdeW { w: self }
+            }
+            # [ doc = "Bit 3 - Clear standby flag" ]
+            # [ inline ( always ) ]
+            pub fn csbf(&mut self) -> _CsbfW {
+                _CsbfW { w: self }
+            }
+            # [ doc = "Bit 2 - Clear wakeup flag" ]
+            # [ inline ( always ) ]
+            pub fn cwuf(&mut self) -> _CwufW {
+                _CwufW { w: self }
+            }
+            # [ doc = "Bit 1 - Power down deepsleep" ]
+            # [ inline ( always ) ]
+            pub fn pdds(&mut self) -> _PddsW {
+                _PddsW { w: self }
+            }
+            # [ doc = "Bit 0 - Low-power deep sleep" ]
+            # [ inline ( always ) ]
+            pub fn lpds(&mut self) -> _LpdsW {
+                _LpdsW { w: self }
+            }
+        }
+    }
+    # [ doc = "power control/status register" ]
+    pub struct Csr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "power control/status register" ]
+    pub mod csr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Csr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WufR {
+            bits: u8,
+        }
+        impl WufR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SbfR {
+            bits: u8,
+        }
+        impl SbfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PvdoR {
+            bits: u8,
+        }
+        impl PvdoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BrrR {
+            bits: u8,
+        }
+        impl BrrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EwupR {
+            bits: u8,
+        }
+        impl EwupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BreR {
+            bits: u8,
+        }
+        impl BreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VosrdyR {
+            bits: u8,
+        }
+        impl VosrdyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EwupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EwupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BreW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BreW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VosrdyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VosrdyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Wakeup flag" ]
+            # [ inline ( always ) ]
+            pub fn wuf(&self) -> WufR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WufR { bits }
+            }
+            # [ doc = "Bit 1 - Standby flag" ]
+            # [ inline ( always ) ]
+            pub fn sbf(&self) -> SbfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SbfR { bits }
+            }
+            # [ doc = "Bit 2 - PVD output" ]
+            # [ inline ( always ) ]
+            pub fn pvdo(&self) -> PvdoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PvdoR { bits }
+            }
+            # [ doc = "Bit 3 - Backup regulator ready" ]
+            # [ inline ( always ) ]
+            pub fn brr(&self) -> BrrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BrrR { bits }
+            }
+            # [ doc = "Bit 8 - Enable WKUP pin" ]
+            # [ inline ( always ) ]
+            pub fn ewup(&self) -> EwupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EwupR { bits }
+            }
+            # [ doc = "Bit 9 - Backup regulator enable" ]
+            # [ inline ( always ) ]
+            pub fn bre(&self) -> BreR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BreR { bits }
+            }
+            # [ doc = "Bit 14 - Regulator voltage scaling output selection ready bit" ]
+            # [ inline ( always ) ]
+            pub fn vosrdy(&self) -> VosrdyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VosrdyR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 8 - Enable WKUP pin" ]
+            # [ inline ( always ) ]
+            pub fn ewup(&mut self) -> _EwupW {
+                _EwupW { w: self }
+            }
+            # [ doc = "Bit 9 - Backup regulator enable" ]
+            # [ inline ( always ) ]
+            pub fn bre(&mut self) -> _BreW {
+                _BreW { w: self }
+            }
+            # [ doc = "Bit 14 - Regulator voltage scaling output selection ready bit" ]
+            # [ inline ( always ) ]
+            pub fn vosrdy(&mut self) -> _VosrdyW {
+                _VosrdyW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Power control" ]
+pub struct Pwr {
+    register_block: pwr::RegisterBlock,
+}
+impl Deref for Pwr {
+    type Target = pwr::RegisterBlock;
+    fn deref(&self) -> &pwr::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Inter-integrated circuit" ]
+pub const I2C3: Peripheral<I2c3> = unsafe { Peripheral::new(1073765376) };
+# [ doc = "Inter-integrated circuit" ]
+pub mod i2c3 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - Control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - Own address register 1" ]
+        pub oar1: Oar1,
+        # [ doc = "0x0c - Own address register 2" ]
+        pub oar2: Oar2,
+        # [ doc = "0x10 - Data register" ]
+        pub dr: Dr,
+        # [ doc = "0x14 - Status register 1" ]
+        pub sr1: Sr1,
+        # [ doc = "0x18 - Status register 2" ]
+        pub sr2: Sr2,
+        # [ doc = "0x1c - Clock control register" ]
+        pub ccr: Ccr,
+        # [ doc = "0x20 - TRISE register" ]
+        pub trise: Trise,
+    }
+    # [ doc = "Control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SwrstR {
+            bits: u8,
+        }
+        impl SwrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlertR {
+            bits: u8,
+        }
+        impl AlertR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PecR {
+            bits: u8,
+        }
+        impl PecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PosR {
+            bits: u8,
+        }
+        impl PosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StopR {
+            bits: u8,
+        }
+        impl StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StartR {
+            bits: u8,
+        }
+        impl StartR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NostretchR {
+            bits: u8,
+        }
+        impl NostretchR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EngcR {
+            bits: u8,
+        }
+        impl EngcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnpecR {
+            bits: u8,
+        }
+        impl EnpecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnarpR {
+            bits: u8,
+        }
+        impl EnarpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmbtypeR {
+            bits: u8,
+        }
+        impl SmbtypeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmbusR {
+            bits: u8,
+        }
+        impl SmbusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PeR {
+            bits: u8,
+        }
+        impl PeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SwrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SwrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlertW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlertW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PecW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PecW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StartW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StartW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NostretchW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NostretchW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EngcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EngcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnpecW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnpecW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnarpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnarpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmbtypeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmbtypeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmbusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmbusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Software reset" ]
+            # [ inline ( always ) ]
+            pub fn swrst(&self) -> SwrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SwrstR { bits }
+            }
+            # [ doc = "Bit 13 - SMBus alert" ]
+            # [ inline ( always ) ]
+            pub fn alert(&self) -> AlertR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlertR { bits }
+            }
+            # [ doc = "Bit 12 - Packet error checking" ]
+            # [ inline ( always ) ]
+            pub fn pec(&self) -> PecR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PecR { bits }
+            }
+            # [ doc = "Bit 11 - Acknowledge/PEC Position (for data reception)" ]
+            # [ inline ( always ) ]
+            pub fn pos(&self) -> PosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PosR { bits }
+            }
+            # [ doc = "Bit 10 - Acknowledge enable" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 9 - Stop generation" ]
+            # [ inline ( always ) ]
+            pub fn stop(&self) -> StopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StopR { bits }
+            }
+            # [ doc = "Bit 8 - Start generation" ]
+            # [ inline ( always ) ]
+            pub fn start(&self) -> StartR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StartR { bits }
+            }
+            # [ doc = "Bit 7 - Clock stretching disable (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn nostretch(&self) -> NostretchR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NostretchR { bits }
+            }
+            # [ doc = "Bit 6 - General call enable" ]
+            # [ inline ( always ) ]
+            pub fn engc(&self) -> EngcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EngcR { bits }
+            }
+            # [ doc = "Bit 5 - PEC enable" ]
+            # [ inline ( always ) ]
+            pub fn enpec(&self) -> EnpecR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnpecR { bits }
+            }
+            # [ doc = "Bit 4 - ARP enable" ]
+            # [ inline ( always ) ]
+            pub fn enarp(&self) -> EnarpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnarpR { bits }
+            }
+            # [ doc = "Bit 3 - SMBus type" ]
+            # [ inline ( always ) ]
+            pub fn smbtype(&self) -> SmbtypeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmbtypeR { bits }
+            }
+            # [ doc = "Bit 1 - SMBus mode" ]
+            # [ inline ( always ) ]
+            pub fn smbus(&self) -> SmbusR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmbusR { bits }
+            }
+            # [ doc = "Bit 0 - Peripheral enable" ]
+            # [ inline ( always ) ]
+            pub fn pe(&self) -> PeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Software reset" ]
+            # [ inline ( always ) ]
+            pub fn swrst(&mut self) -> _SwrstW {
+                _SwrstW { w: self }
+            }
+            # [ doc = "Bit 13 - SMBus alert" ]
+            # [ inline ( always ) ]
+            pub fn alert(&mut self) -> _AlertW {
+                _AlertW { w: self }
+            }
+            # [ doc = "Bit 12 - Packet error checking" ]
+            # [ inline ( always ) ]
+            pub fn pec(&mut self) -> _PecW {
+                _PecW { w: self }
+            }
+            # [ doc = "Bit 11 - Acknowledge/PEC Position (for data reception)" ]
+            # [ inline ( always ) ]
+            pub fn pos(&mut self) -> _PosW {
+                _PosW { w: self }
+            }
+            # [ doc = "Bit 10 - Acknowledge enable" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 9 - Stop generation" ]
+            # [ inline ( always ) ]
+            pub fn stop(&mut self) -> _StopW {
+                _StopW { w: self }
+            }
+            # [ doc = "Bit 8 - Start generation" ]
+            # [ inline ( always ) ]
+            pub fn start(&mut self) -> _StartW {
+                _StartW { w: self }
+            }
+            # [ doc = "Bit 7 - Clock stretching disable (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn nostretch(&mut self) -> _NostretchW {
+                _NostretchW { w: self }
+            }
+            # [ doc = "Bit 6 - General call enable" ]
+            # [ inline ( always ) ]
+            pub fn engc(&mut self) -> _EngcW {
+                _EngcW { w: self }
+            }
+            # [ doc = "Bit 5 - PEC enable" ]
+            # [ inline ( always ) ]
+            pub fn enpec(&mut self) -> _EnpecW {
+                _EnpecW { w: self }
+            }
+            # [ doc = "Bit 4 - ARP enable" ]
+            # [ inline ( always ) ]
+            pub fn enarp(&mut self) -> _EnarpW {
+                _EnarpW { w: self }
+            }
+            # [ doc = "Bit 3 - SMBus type" ]
+            # [ inline ( always ) ]
+            pub fn smbtype(&mut self) -> _SmbtypeW {
+                _SmbtypeW { w: self }
+            }
+            # [ doc = "Bit 1 - SMBus mode" ]
+            # [ inline ( always ) ]
+            pub fn smbus(&mut self) -> _SmbusW {
+                _SmbusW { w: self }
+            }
+            # [ doc = "Bit 0 - Peripheral enable" ]
+            # [ inline ( always ) ]
+            pub fn pe(&mut self) -> _PeW {
+                _PeW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LastR {
+            bits: u8,
+        }
+        impl LastR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaenR {
+            bits: u8,
+        }
+        impl DmaenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ItbufenR {
+            bits: u8,
+        }
+        impl ItbufenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ItevtenR {
+            bits: u8,
+        }
+        impl ItevtenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IterrenR {
+            bits: u8,
+        }
+        impl IterrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FreqR {
+            bits: u8,
+        }
+        impl FreqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LastW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LastW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ItbufenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ItbufenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ItevtenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ItevtenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IterrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IterrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FreqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FreqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 12 - DMA last transfer" ]
+            # [ inline ( always ) ]
+            pub fn last(&self) -> LastR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LastR { bits }
+            }
+            # [ doc = "Bit 11 - DMA requests enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&self) -> DmaenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmaenR { bits }
+            }
+            # [ doc = "Bit 10 - Buffer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn itbufen(&self) -> ItbufenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ItbufenR { bits }
+            }
+            # [ doc = "Bit 9 - Event interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn itevten(&self) -> ItevtenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ItevtenR { bits }
+            }
+            # [ doc = "Bit 8 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn iterren(&self) -> IterrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IterrenR { bits }
+            }
+            # [ doc = "Bits 0:5 - Peripheral clock frequency" ]
+            # [ inline ( always ) ]
+            pub fn freq(&self) -> FreqR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FreqR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 12 - DMA last transfer" ]
+            # [ inline ( always ) ]
+            pub fn last(&mut self) -> _LastW {
+                _LastW { w: self }
+            }
+            # [ doc = "Bit 11 - DMA requests enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&mut self) -> _DmaenW {
+                _DmaenW { w: self }
+            }
+            # [ doc = "Bit 10 - Buffer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn itbufen(&mut self) -> _ItbufenW {
+                _ItbufenW { w: self }
+            }
+            # [ doc = "Bit 9 - Event interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn itevten(&mut self) -> _ItevtenW {
+                _ItevtenW { w: self }
+            }
+            # [ doc = "Bit 8 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn iterren(&mut self) -> _IterrenW {
+                _IterrenW { w: self }
+            }
+            # [ doc = "Bits 0:5 - Peripheral clock frequency" ]
+            # [ inline ( always ) ]
+            pub fn freq(&mut self) -> _FreqW {
+                _FreqW { w: self }
+            }
+        }
+    }
+    # [ doc = "Own address register 1" ]
+    pub struct Oar1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Own address register 1" ]
+    pub mod oar1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Oar1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddmodeR {
+            bits: u8,
+        }
+        impl AddmodeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add10R {
+            bits: u8,
+        }
+        impl Add10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add7R {
+            bits: u8,
+        }
+        impl Add7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add0R {
+            bits: u8,
+        }
+        impl Add0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddmodeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddmodeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Addressing mode (slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn addmode(&self) -> AddmodeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddmodeR { bits }
+            }
+            # [ doc = "Bits 8:9 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add10(&self) -> Add10R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add10R { bits }
+            }
+            # [ doc = "Bits 1:7 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add7(&self) -> Add7R {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add7R { bits }
+            }
+            # [ doc = "Bit 0 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add0(&self) -> Add0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Addressing mode (slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn addmode(&mut self) -> _AddmodeW {
+                _AddmodeW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add10(&mut self) -> _Add10W {
+                _Add10W { w: self }
+            }
+            # [ doc = "Bits 1:7 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add7(&mut self) -> _Add7W {
+                _Add7W { w: self }
+            }
+            # [ doc = "Bit 0 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add0(&mut self) -> _Add0W {
+                _Add0W { w: self }
+            }
+        }
+    }
+    # [ doc = "Own address register 2" ]
+    pub struct Oar2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Own address register 2" ]
+    pub mod oar2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Oar2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add2R {
+            bits: u8,
+        }
+        impl Add2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EndualR {
+            bits: u8,
+        }
+        impl EndualR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EndualW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EndualW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 1:7 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add2(&self) -> Add2R {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add2R { bits }
+            }
+            # [ doc = "Bit 0 - Dual addressing mode enable" ]
+            # [ inline ( always ) ]
+            pub fn endual(&self) -> EndualR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EndualR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 1:7 - Interface address" ]
+            # [ inline ( always ) ]
+            pub fn add2(&mut self) -> _Add2W {
+                _Add2W { w: self }
+            }
+            # [ doc = "Bit 0 - Dual addressing mode enable" ]
+            # [ inline ( always ) ]
+            pub fn endual(&mut self) -> _EndualW {
+                _EndualW { w: self }
+            }
+        }
+    }
+    # [ doc = "Data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrR {
+            bits: u8,
+        }
+        impl DrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - 8-bit data register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&self) -> DrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - 8-bit data register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&mut self) -> _DrW {
+                _DrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Status register 1" ]
+    pub struct Sr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register 1" ]
+    pub mod sr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmbalertR {
+            bits: u8,
+        }
+        impl SmbalertR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeoutR {
+            bits: u8,
+        }
+        impl TimeoutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PecerrR {
+            bits: u8,
+        }
+        impl PecerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OvrR {
+            bits: u8,
+        }
+        impl OvrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AfR {
+            bits: u8,
+        }
+        impl AfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArloR {
+            bits: u8,
+        }
+        impl ArloR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxER {
+            bits: u8,
+        }
+        impl TxER {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxNeR {
+            bits: u8,
+        }
+        impl RxNeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StopfR {
+            bits: u8,
+        }
+        impl StopfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add10R {
+            bits: u8,
+        }
+        impl Add10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BtfR {
+            bits: u8,
+        }
+        impl BtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddrR {
+            bits: u8,
+        }
+        impl AddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SbR {
+            bits: u8,
+        }
+        impl SbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmbalertW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmbalertW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TimeoutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TimeoutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PecerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PecerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OvrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OvrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArloW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArloW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - SMBus alert" ]
+            # [ inline ( always ) ]
+            pub fn smbalert(&self) -> SmbalertR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmbalertR { bits }
+            }
+            # [ doc = "Bit 14 - Timeout or Tlow error" ]
+            # [ inline ( always ) ]
+            pub fn timeout(&self) -> TimeoutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TimeoutR { bits }
+            }
+            # [ doc = "Bit 12 - PEC Error in reception" ]
+            # [ inline ( always ) ]
+            pub fn pecerr(&self) -> PecerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PecerrR { bits }
+            }
+            # [ doc = "Bit 11 - Overrun/Underrun" ]
+            # [ inline ( always ) ]
+            pub fn ovr(&self) -> OvrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OvrR { bits }
+            }
+            # [ doc = "Bit 10 - Acknowledge failure" ]
+            # [ inline ( always ) ]
+            pub fn af(&self) -> AfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AfR { bits }
+            }
+            # [ doc = "Bit 9 - Arbitration lost (master mode)" ]
+            # [ inline ( always ) ]
+            pub fn arlo(&self) -> ArloR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArloR { bits }
+            }
+            # [ doc = "Bit 8 - Bus error" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 7 - Data register empty (transmitters)" ]
+            # [ inline ( always ) ]
+            pub fn tx_e(&self) -> TxER {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxER { bits }
+            }
+            # [ doc = "Bit 6 - Data register not empty (receivers)" ]
+            # [ inline ( always ) ]
+            pub fn rx_ne(&self) -> RxNeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxNeR { bits }
+            }
+            # [ doc = "Bit 4 - Stop detection (slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn stopf(&self) -> StopfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StopfR { bits }
+            }
+            # [ doc = "Bit 3 - 10-bit header sent (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn add10(&self) -> Add10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add10R { bits }
+            }
+            # [ doc = "Bit 2 - Byte transfer finished" ]
+            # [ inline ( always ) ]
+            pub fn btf(&self) -> BtfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BtfR { bits }
+            }
+            # [ doc = "Bit 1 - Address sent (master mode)/matched (slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn addr(&self) -> AddrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddrR { bits }
+            }
+            # [ doc = "Bit 0 - Start bit (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn sb(&self) -> SbR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SbR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - SMBus alert" ]
+            # [ inline ( always ) ]
+            pub fn smbalert(&mut self) -> _SmbalertW {
+                _SmbalertW { w: self }
+            }
+            # [ doc = "Bit 14 - Timeout or Tlow error" ]
+            # [ inline ( always ) ]
+            pub fn timeout(&mut self) -> _TimeoutW {
+                _TimeoutW { w: self }
+            }
+            # [ doc = "Bit 12 - PEC Error in reception" ]
+            # [ inline ( always ) ]
+            pub fn pecerr(&mut self) -> _PecerrW {
+                _PecerrW { w: self }
+            }
+            # [ doc = "Bit 11 - Overrun/Underrun" ]
+            # [ inline ( always ) ]
+            pub fn ovr(&mut self) -> _OvrW {
+                _OvrW { w: self }
+            }
+            # [ doc = "Bit 10 - Acknowledge failure" ]
+            # [ inline ( always ) ]
+            pub fn af(&mut self) -> _AfW {
+                _AfW { w: self }
+            }
+            # [ doc = "Bit 9 - Arbitration lost (master mode)" ]
+            # [ inline ( always ) ]
+            pub fn arlo(&mut self) -> _ArloW {
+                _ArloW { w: self }
+            }
+            # [ doc = "Bit 8 - Bus error" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Status register 2" ]
+    pub struct Sr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register 2" ]
+    pub mod sr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Sr2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PecR {
+            bits: u8,
+        }
+        impl PecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DualfR {
+            bits: u8,
+        }
+        impl DualfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmbhostR {
+            bits: u8,
+        }
+        impl SmbhostR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmbdefaultR {
+            bits: u8,
+        }
+        impl SmbdefaultR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GencallR {
+            bits: u8,
+        }
+        impl GencallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TraR {
+            bits: u8,
+        }
+        impl TraR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BusyR {
+            bits: u8,
+        }
+        impl BusyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MslR {
+            bits: u8,
+        }
+        impl MslR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:15 - acket error checking register" ]
+            # [ inline ( always ) ]
+            pub fn pec(&self) -> PecR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PecR { bits }
+            }
+            # [ doc = "Bit 7 - Dual flag (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn dualf(&self) -> DualfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DualfR { bits }
+            }
+            # [ doc = "Bit 6 - SMBus host header (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn smbhost(&self) -> SmbhostR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmbhostR { bits }
+            }
+            # [ doc = "Bit 5 - SMBus device default address (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn smbdefault(&self) -> SmbdefaultR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmbdefaultR { bits }
+            }
+            # [ doc = "Bit 4 - General call address (Slave mode)" ]
+            # [ inline ( always ) ]
+            pub fn gencall(&self) -> GencallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GencallR { bits }
+            }
+            # [ doc = "Bit 2 - Transmitter/receiver" ]
+            # [ inline ( always ) ]
+            pub fn tra(&self) -> TraR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TraR { bits }
+            }
+            # [ doc = "Bit 1 - Bus busy" ]
+            # [ inline ( always ) ]
+            pub fn busy(&self) -> BusyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BusyR { bits }
+            }
+            # [ doc = "Bit 0 - Master/slave" ]
+            # [ inline ( always ) ]
+            pub fn msl(&self) -> MslR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MslR { bits }
+            }
+        }
+    }
+    # [ doc = "Clock control register" ]
+    pub struct Ccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Clock control register" ]
+    pub mod ccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FSR {
+            bits: u8,
+        }
+        impl FSR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DutyR {
+            bits: u8,
+        }
+        impl DutyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcrR {
+            bits: u16,
+        }
+        impl CcrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FSW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FSW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DutyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DutyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - I2C master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn f_s(&self) -> FSR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FSR { bits }
+            }
+            # [ doc = "Bit 14 - Fast mode duty cycle" ]
+            # [ inline ( always ) ]
+            pub fn duty(&self) -> DutyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DutyR { bits }
+            }
+            # [ doc = "Bits 0:11 - Clock control register in Fast/Standard mode (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn ccr(&self) -> CcrR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CcrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - I2C master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn f_s(&mut self) -> _FSW {
+                _FSW { w: self }
+            }
+            # [ doc = "Bit 14 - Fast mode duty cycle" ]
+            # [ inline ( always ) ]
+            pub fn duty(&mut self) -> _DutyW {
+                _DutyW { w: self }
+            }
+            # [ doc = "Bits 0:11 - Clock control register in Fast/Standard mode (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn ccr(&mut self) -> _CcrW {
+                _CcrW { w: self }
+            }
+        }
+    }
+    # [ doc = "TRISE register" ]
+    pub struct Trise {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "TRISE register" ]
+    pub mod trise {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Trise {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TriseR {
+            bits: u8,
+        }
+        impl TriseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TriseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TriseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:5 - Maximum rise time in Fast/Standard mode (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn trise(&self) -> TriseR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TriseR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:5 - Maximum rise time in Fast/Standard mode (Master mode)" ]
+            # [ inline ( always ) ]
+            pub fn trise(&mut self) -> _TriseW {
+                _TriseW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Inter-integrated circuit" ]
+pub struct I2c3 {
+    register_block: i2c3::RegisterBlock,
+}
+impl Deref for I2c3 {
+    type Target = i2c3::RegisterBlock;
+    fn deref(&self) -> &i2c3::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "I2C2" ]
+pub const I2C2: Peripheral<I2c2> = unsafe { Peripheral::new(1073764352) };
+# [ doc = r" Register block" ]
+pub struct I2c2 {
+    register_block: i2c3::RegisterBlock,
+}
+impl Deref for I2c2 {
+    type Target = i2c3::RegisterBlock;
+    fn deref(&self) -> &i2c3::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "I2C1" ]
+pub const I2C1: Peripheral<I2c1> = unsafe { Peripheral::new(1073763328) };
+# [ doc = r" Register block" ]
+pub struct I2c1 {
+    register_block: i2c3::RegisterBlock,
+}
+impl Deref for I2c1 {
+    type Target = i2c3::RegisterBlock;
+    fn deref(&self) -> &i2c3::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Independent watchdog" ]
+pub const IWDG: Peripheral<Iwdg> = unsafe { Peripheral::new(1073754112) };
+# [ doc = "Independent watchdog" ]
+pub mod iwdg {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Key register" ]
+        pub kr: Kr,
+        # [ doc = "0x04 - Prescaler register" ]
+        pub pr: Pr,
+        # [ doc = "0x08 - Reload register" ]
+        pub rlr: Rlr,
+        # [ doc = "0x0c - Status register" ]
+        pub sr: Sr,
+    }
+    # [ doc = "Key register" ]
+    pub struct Kr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Key register" ]
+    pub mod kr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Kr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _KeyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _KeyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Key value (write only, read 0000h)" ]
+            # [ inline ( always ) ]
+            pub fn key(&mut self) -> _KeyW {
+                _KeyW { w: self }
+            }
+        }
+    }
+    # [ doc = "Prescaler register" ]
+    pub struct Pr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Prescaler register" ]
+    pub mod pr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrR {
+            bits: u8,
+        }
+        impl PrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:2 - Prescaler divider" ]
+            # [ inline ( always ) ]
+            pub fn pr(&self) -> PrR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:2 - Prescaler divider" ]
+            # [ inline ( always ) ]
+            pub fn pr(&mut self) -> _PrW {
+                _PrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Reload register" ]
+    pub struct Rlr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Reload register" ]
+    pub mod rlr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Rlr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RlR {
+            bits: u16,
+        }
+        impl RlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Watchdog counter reload value" ]
+            # [ inline ( always ) ]
+            pub fn rl(&self) -> RlR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4095 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Watchdog counter reload value" ]
+            # [ inline ( always ) ]
+            pub fn rl(&mut self) -> _RlW {
+                _RlW { w: self }
+            }
+        }
+    }
+    # [ doc = "Status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RvuR {
+            bits: u8,
+        }
+        impl RvuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PvuR {
+            bits: u8,
+        }
+        impl PvuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - Watchdog counter reload value update" ]
+            # [ inline ( always ) ]
+            pub fn rvu(&self) -> RvuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RvuR { bits }
+            }
+            # [ doc = "Bit 0 - Watchdog prescaler value update" ]
+            # [ inline ( always ) ]
+            pub fn pvu(&self) -> PvuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PvuR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Independent watchdog" ]
+pub struct Iwdg {
+    register_block: iwdg::RegisterBlock,
+}
+impl Deref for Iwdg {
+    type Target = iwdg::RegisterBlock;
+    fn deref(&self) -> &iwdg::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Window watchdog" ]
+pub const WWDG: Peripheral<Wwdg> = unsafe { Peripheral::new(1073753088) };
+# [ doc = "Window watchdog" ]
+pub mod wwdg {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Control register" ]
+        pub cr: Cr,
+        # [ doc = "0x04 - Configuration register" ]
+        pub cfr: Cfr,
+        # [ doc = "0x08 - Status register" ]
+        pub sr: Sr,
+    }
+    # [ doc = "Control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdgaR {
+            bits: u8,
+        }
+        impl WdgaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TR {
+            bits: u8,
+        }
+        impl TR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdgaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdgaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Activation bit" ]
+            # [ inline ( always ) ]
+            pub fn wdga(&self) -> WdgaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdgaR { bits }
+            }
+            # [ doc = "Bits 0:6 - 7-bit counter (MSB to LSB)" ]
+            # [ inline ( always ) ]
+            pub fn t(&self) -> TR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 127 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Activation bit" ]
+            # [ inline ( always ) ]
+            pub fn wdga(&mut self) -> _WdgaW {
+                _WdgaW { w: self }
+            }
+            # [ doc = "Bits 0:6 - 7-bit counter (MSB to LSB)" ]
+            # [ inline ( always ) ]
+            pub fn t(&mut self) -> _TW {
+                _TW { w: self }
+            }
+        }
+    }
+    # [ doc = "Configuration register" ]
+    pub struct Cfr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Configuration register" ]
+    pub mod cfr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cfr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EwiR {
+            bits: u8,
+        }
+        impl EwiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Wdgtb1R {
+            bits: u8,
+        }
+        impl Wdgtb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Wdgtb0R {
+            bits: u8,
+        }
+        impl Wdgtb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WR {
+            bits: u8,
+        }
+        impl WR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EwiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EwiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Wdgtb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Wdgtb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Wdgtb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Wdgtb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - Early wakeup interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ewi(&self) -> EwiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EwiR { bits }
+            }
+            # [ doc = "Bit 8 - Timer base" ]
+            # [ inline ( always ) ]
+            pub fn wdgtb1(&self) -> Wdgtb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Wdgtb1R { bits }
+            }
+            # [ doc = "Bit 7 - Timer base" ]
+            # [ inline ( always ) ]
+            pub fn wdgtb0(&self) -> Wdgtb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Wdgtb0R { bits }
+            }
+            # [ doc = "Bits 0:6 - 7-bit window value" ]
+            # [ inline ( always ) ]
+            pub fn w(&self) -> WR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 127 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - Early wakeup interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ewi(&mut self) -> _EwiW {
+                _EwiW { w: self }
+            }
+            # [ doc = "Bit 8 - Timer base" ]
+            # [ inline ( always ) ]
+            pub fn wdgtb1(&mut self) -> _Wdgtb1W {
+                _Wdgtb1W { w: self }
+            }
+            # [ doc = "Bit 7 - Timer base" ]
+            # [ inline ( always ) ]
+            pub fn wdgtb0(&mut self) -> _Wdgtb0W {
+                _Wdgtb0W { w: self }
+            }
+            # [ doc = "Bits 0:6 - 7-bit window value" ]
+            # [ inline ( always ) ]
+            pub fn w(&mut self) -> _WW {
+                _WW { w: self }
+            }
+        }
+    }
+    # [ doc = "Status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EwifR {
+            bits: u8,
+        }
+        impl EwifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EwifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EwifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Early wakeup interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn ewif(&self) -> EwifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EwifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Early wakeup interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn ewif(&mut self) -> _EwifW {
+                _EwifW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Window watchdog" ]
+pub struct Wwdg {
+    register_block: wwdg::RegisterBlock,
+}
+impl Deref for Wwdg {
+    type Target = wwdg::RegisterBlock;
+    fn deref(&self) -> &wwdg::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Real-time clock" ]
+pub const RTC: Peripheral<Rtc> = unsafe { Peripheral::new(1073752064) };
+# [ doc = "Real-time clock" ]
+pub mod rtc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - time register" ]
+        pub tr: Tr,
+        # [ doc = "0x04 - date register" ]
+        pub dr: Dr,
+        # [ doc = "0x08 - control register" ]
+        pub cr: Cr,
+        # [ doc = "0x0c - initialization and status register" ]
+        pub isr: Isr,
+        # [ doc = "0x10 - prescaler register" ]
+        pub prer: Prer,
+        # [ doc = "0x14 - wakeup timer register" ]
+        pub wutr: Wutr,
+        # [ doc = "0x18 - calibration register" ]
+        pub calibr: Calibr,
+        # [ doc = "0x1c - alarm A register" ]
+        pub alrmar: Alrmar,
+        # [ doc = "0x20 - alarm B register" ]
+        pub alrmbr: Alrmbr,
+        # [ doc = "0x24 - write protection register" ]
+        pub wpr: Wpr,
+        # [ doc = "0x28 - sub second register" ]
+        pub ssr: Ssr,
+        # [ doc = "0x2c - shift control register" ]
+        pub shiftr: Shiftr,
+        # [ doc = "0x30 - time stamp time register" ]
+        pub tstr: Tstr,
+        # [ doc = "0x34 - time stamp date register" ]
+        pub tsdr: Tsdr,
+        # [ doc = "0x38 - timestamp sub second register" ]
+        pub tsssr: Tsssr,
+        # [ doc = "0x3c - calibration register" ]
+        pub calr: Calr,
+        # [ doc = "0x40 - tamper and alternate function configuration register" ]
+        pub tafcr: Tafcr,
+        # [ doc = "0x44 - alarm A sub second register" ]
+        pub alrmassr: Alrmassr,
+        # [ doc = "0x48 - alarm B sub second register" ]
+        pub alrmbssr: Alrmbssr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x50 - backup register" ]
+        pub bkp0r: Bkp0r,
+        # [ doc = "0x54 - backup register" ]
+        pub bkp1r: Bkp1r,
+        # [ doc = "0x58 - backup register" ]
+        pub bkp2r: Bkp2r,
+        # [ doc = "0x5c - backup register" ]
+        pub bkp3r: Bkp3r,
+        # [ doc = "0x60 - backup register" ]
+        pub bkp4r: Bkp4r,
+        # [ doc = "0x64 - backup register" ]
+        pub bkp5r: Bkp5r,
+        # [ doc = "0x68 - backup register" ]
+        pub bkp6r: Bkp6r,
+        # [ doc = "0x6c - backup register" ]
+        pub bkp7r: Bkp7r,
+        # [ doc = "0x70 - backup register" ]
+        pub bkp8r: Bkp8r,
+        # [ doc = "0x74 - backup register" ]
+        pub bkp9r: Bkp9r,
+        # [ doc = "0x78 - backup register" ]
+        pub bkp10r: Bkp10r,
+        # [ doc = "0x7c - backup register" ]
+        pub bkp11r: Bkp11r,
+        # [ doc = "0x80 - backup register" ]
+        pub bkp12r: Bkp12r,
+        # [ doc = "0x84 - backup register" ]
+        pub bkp13r: Bkp13r,
+        # [ doc = "0x88 - backup register" ]
+        pub bkp14r: Bkp14r,
+        # [ doc = "0x8c - backup register" ]
+        pub bkp15r: Bkp15r,
+        # [ doc = "0x90 - backup register" ]
+        pub bkp16r: Bkp16r,
+        # [ doc = "0x94 - backup register" ]
+        pub bkp17r: Bkp17r,
+        # [ doc = "0x98 - backup register" ]
+        pub bkp18r: Bkp18r,
+        # [ doc = "0x9c - backup register" ]
+        pub bkp19r: Bkp19r,
+    }
+    # [ doc = "time register" ]
+    pub struct Tr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "time register" ]
+    pub mod tr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmR {
+            bits: u8,
+        }
+        impl PmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtR {
+            bits: u8,
+        }
+        impl HtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HuR {
+            bits: u8,
+        }
+        impl HuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MntR {
+            bits: u8,
+        }
+        impl MntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MnuR {
+            bits: u8,
+        }
+        impl MnuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StR {
+            bits: u8,
+        }
+        impl StR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SuR {
+            bits: u8,
+        }
+        impl SuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MnuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MnuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&self) -> PmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmR { bits }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&self) -> HtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtR { bits }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&self) -> HuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HuR { bits }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&self) -> MntR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MntR { bits }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&self) -> MnuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MnuR { bits }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&self) -> StR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StR { bits }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&self) -> SuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SuR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&mut self) -> _PmW {
+                _PmW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&mut self) -> _HtW {
+                _HtW { w: self }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&mut self) -> _HuW {
+                _HuW { w: self }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&mut self) -> _MntW {
+                _MntW { w: self }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&mut self) -> _MnuW {
+                _MnuW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&mut self) -> _StW {
+                _StW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&mut self) -> _SuW {
+                _SuW { w: self }
+            }
+        }
+    }
+    # [ doc = "date register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "date register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct YtR {
+            bits: u8,
+        }
+        impl YtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct YuR {
+            bits: u8,
+        }
+        impl YuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WduR {
+            bits: u8,
+        }
+        impl WduR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtR {
+            bits: u8,
+        }
+        impl MtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuR {
+            bits: u8,
+        }
+        impl MuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtR {
+            bits: u8,
+        }
+        impl DtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DuR {
+            bits: u8,
+        }
+        impl DuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _YtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _YtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _YuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _YuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WduW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WduW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 20:23 - Year tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn yt(&self) -> YtR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                YtR { bits }
+            }
+            # [ doc = "Bits 16:19 - Year units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn yu(&self) -> YuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                YuR { bits }
+            }
+            # [ doc = "Bits 13:15 - Week day units" ]
+            # [ inline ( always ) ]
+            pub fn wdu(&self) -> WduR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WduR { bits }
+            }
+            # [ doc = "Bit 12 - Month tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mt(&self) -> MtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtR { bits }
+            }
+            # [ doc = "Bits 8:11 - Month units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mu(&self) -> MuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuR { bits }
+            }
+            # [ doc = "Bits 4:5 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&self) -> DtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtR { bits }
+            }
+            # [ doc = "Bits 0:3 - Date units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&self) -> DuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DuR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 8449 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 20:23 - Year tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn yt(&mut self) -> _YtW {
+                _YtW { w: self }
+            }
+            # [ doc = "Bits 16:19 - Year units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn yu(&mut self) -> _YuW {
+                _YuW { w: self }
+            }
+            # [ doc = "Bits 13:15 - Week day units" ]
+            # [ inline ( always ) ]
+            pub fn wdu(&mut self) -> _WduW {
+                _WduW { w: self }
+            }
+            # [ doc = "Bit 12 - Month tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mt(&mut self) -> _MtW {
+                _MtW { w: self }
+            }
+            # [ doc = "Bits 8:11 - Month units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mu(&mut self) -> _MuW {
+                _MuW { w: self }
+            }
+            # [ doc = "Bits 4:5 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&mut self) -> _DtW {
+                _DtW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Date units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&mut self) -> _DuW {
+                _DuW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CoeR {
+            bits: u8,
+        }
+        impl CoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OselR {
+            bits: u8,
+        }
+        impl OselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PolR {
+            bits: u8,
+        }
+        impl PolR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u8,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Sub1hR {
+            bits: u8,
+        }
+        impl Sub1hR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Add1hR {
+            bits: u8,
+        }
+        impl Add1hR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsieR {
+            bits: u8,
+        }
+        impl TsieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WutieR {
+            bits: u8,
+        }
+        impl WutieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrbieR {
+            bits: u8,
+        }
+        impl AlrbieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlraieR {
+            bits: u8,
+        }
+        impl AlraieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TseR {
+            bits: u8,
+        }
+        impl TseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WuteR {
+            bits: u8,
+        }
+        impl WuteR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrbeR {
+            bits: u8,
+        }
+        impl AlrbeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlraeR {
+            bits: u8,
+        }
+        impl AlraeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DceR {
+            bits: u8,
+        }
+        impl DceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FmtR {
+            bits: u8,
+        }
+        impl FmtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RefckonR {
+            bits: u8,
+        }
+        impl RefckonR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsedgeR {
+            bits: u8,
+        }
+        impl TsedgeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WckselR {
+            bits: u8,
+        }
+        impl WckselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CoeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CoeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PolW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PolW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sub1hW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sub1hW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add1hW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add1hW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WutieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WutieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlrbieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlrbieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlraieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlraieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WuteW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WuteW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlrbeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlrbeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlraeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlraeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FmtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FmtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RefckonW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RefckonW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsedgeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsedgeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WckselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WckselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - Calibration output enable" ]
+            # [ inline ( always ) ]
+            pub fn coe(&self) -> CoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CoeR { bits }
+            }
+            # [ doc = "Bits 21:22 - Output selection" ]
+            # [ inline ( always ) ]
+            pub fn osel(&self) -> OselR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OselR { bits }
+            }
+            # [ doc = "Bit 20 - Output polarity" ]
+            # [ inline ( always ) ]
+            pub fn pol(&self) -> PolR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PolR { bits }
+            }
+            # [ doc = "Bit 18 - Backup" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BkpR { bits }
+            }
+            # [ doc = "Bit 17 - Subtract 1 hour (winter time change)" ]
+            # [ inline ( always ) ]
+            pub fn sub1h(&self) -> Sub1hR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Sub1hR { bits }
+            }
+            # [ doc = "Bit 16 - Add 1 hour (summer time change)" ]
+            # [ inline ( always ) ]
+            pub fn add1h(&self) -> Add1hR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Add1hR { bits }
+            }
+            # [ doc = "Bit 15 - Time-stamp interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tsie(&self) -> TsieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsieR { bits }
+            }
+            # [ doc = "Bit 14 - Wakeup timer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn wutie(&self) -> WutieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WutieR { bits }
+            }
+            # [ doc = "Bit 13 - Alarm B interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn alrbie(&self) -> AlrbieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrbieR { bits }
+            }
+            # [ doc = "Bit 12 - Alarm A interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn alraie(&self) -> AlraieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlraieR { bits }
+            }
+            # [ doc = "Bit 11 - Time stamp enable" ]
+            # [ inline ( always ) ]
+            pub fn tse(&self) -> TseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TseR { bits }
+            }
+            # [ doc = "Bit 10 - Wakeup timer enable" ]
+            # [ inline ( always ) ]
+            pub fn wute(&self) -> WuteR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WuteR { bits }
+            }
+            # [ doc = "Bit 9 - Alarm B enable" ]
+            # [ inline ( always ) ]
+            pub fn alrbe(&self) -> AlrbeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrbeR { bits }
+            }
+            # [ doc = "Bit 8 - Alarm A enable" ]
+            # [ inline ( always ) ]
+            pub fn alrae(&self) -> AlraeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlraeR { bits }
+            }
+            # [ doc = "Bit 7 - Coarse digital calibration enable" ]
+            # [ inline ( always ) ]
+            pub fn dce(&self) -> DceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DceR { bits }
+            }
+            # [ doc = "Bit 6 - Hour format" ]
+            # [ inline ( always ) ]
+            pub fn fmt(&self) -> FmtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FmtR { bits }
+            }
+            # [ doc = "Bit 4 - Reference clock detection enable (50 or 60 Hz)" ]
+            # [ inline ( always ) ]
+            pub fn refckon(&self) -> RefckonR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RefckonR { bits }
+            }
+            # [ doc = "Bit 3 - Time-stamp event active edge" ]
+            # [ inline ( always ) ]
+            pub fn tsedge(&self) -> TsedgeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsedgeR { bits }
+            }
+            # [ doc = "Bits 0:2 - Wakeup clock selection" ]
+            # [ inline ( always ) ]
+            pub fn wcksel(&self) -> WckselR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WckselR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - Calibration output enable" ]
+            # [ inline ( always ) ]
+            pub fn coe(&mut self) -> _CoeW {
+                _CoeW { w: self }
+            }
+            # [ doc = "Bits 21:22 - Output selection" ]
+            # [ inline ( always ) ]
+            pub fn osel(&mut self) -> _OselW {
+                _OselW { w: self }
+            }
+            # [ doc = "Bit 20 - Output polarity" ]
+            # [ inline ( always ) ]
+            pub fn pol(&mut self) -> _PolW {
+                _PolW { w: self }
+            }
+            # [ doc = "Bit 18 - Backup" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+            # [ doc = "Bit 17 - Subtract 1 hour (winter time change)" ]
+            # [ inline ( always ) ]
+            pub fn sub1h(&mut self) -> _Sub1hW {
+                _Sub1hW { w: self }
+            }
+            # [ doc = "Bit 16 - Add 1 hour (summer time change)" ]
+            # [ inline ( always ) ]
+            pub fn add1h(&mut self) -> _Add1hW {
+                _Add1hW { w: self }
+            }
+            # [ doc = "Bit 15 - Time-stamp interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tsie(&mut self) -> _TsieW {
+                _TsieW { w: self }
+            }
+            # [ doc = "Bit 14 - Wakeup timer interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn wutie(&mut self) -> _WutieW {
+                _WutieW { w: self }
+            }
+            # [ doc = "Bit 13 - Alarm B interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn alrbie(&mut self) -> _AlrbieW {
+                _AlrbieW { w: self }
+            }
+            # [ doc = "Bit 12 - Alarm A interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn alraie(&mut self) -> _AlraieW {
+                _AlraieW { w: self }
+            }
+            # [ doc = "Bit 11 - Time stamp enable" ]
+            # [ inline ( always ) ]
+            pub fn tse(&mut self) -> _TseW {
+                _TseW { w: self }
+            }
+            # [ doc = "Bit 10 - Wakeup timer enable" ]
+            # [ inline ( always ) ]
+            pub fn wute(&mut self) -> _WuteW {
+                _WuteW { w: self }
+            }
+            # [ doc = "Bit 9 - Alarm B enable" ]
+            # [ inline ( always ) ]
+            pub fn alrbe(&mut self) -> _AlrbeW {
+                _AlrbeW { w: self }
+            }
+            # [ doc = "Bit 8 - Alarm A enable" ]
+            # [ inline ( always ) ]
+            pub fn alrae(&mut self) -> _AlraeW {
+                _AlraeW { w: self }
+            }
+            # [ doc = "Bit 7 - Coarse digital calibration enable" ]
+            # [ inline ( always ) ]
+            pub fn dce(&mut self) -> _DceW {
+                _DceW { w: self }
+            }
+            # [ doc = "Bit 6 - Hour format" ]
+            # [ inline ( always ) ]
+            pub fn fmt(&mut self) -> _FmtW {
+                _FmtW { w: self }
+            }
+            # [ doc = "Bit 4 - Reference clock detection enable (50 or 60 Hz)" ]
+            # [ inline ( always ) ]
+            pub fn refckon(&mut self) -> _RefckonW {
+                _RefckonW { w: self }
+            }
+            # [ doc = "Bit 3 - Time-stamp event active edge" ]
+            # [ inline ( always ) ]
+            pub fn tsedge(&mut self) -> _TsedgeW {
+                _TsedgeW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Wakeup clock selection" ]
+            # [ inline ( always ) ]
+            pub fn wcksel(&mut self) -> _WckselW {
+                _WckselW { w: self }
+            }
+        }
+    }
+    # [ doc = "initialization and status register" ]
+    pub struct Isr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "initialization and status register" ]
+    pub mod isr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Isr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrawfR {
+            bits: u8,
+        }
+        impl AlrawfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrbwfR {
+            bits: u8,
+        }
+        impl AlrbwfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WutwfR {
+            bits: u8,
+        }
+        impl WutwfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ShpfR {
+            bits: u8,
+        }
+        impl ShpfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InitsR {
+            bits: u8,
+        }
+        impl InitsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RsfR {
+            bits: u8,
+        }
+        impl RsfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InitfR {
+            bits: u8,
+        }
+        impl InitfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InitR {
+            bits: u8,
+        }
+        impl InitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrafR {
+            bits: u8,
+        }
+        impl AlrafR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlrbfR {
+            bits: u8,
+        }
+        impl AlrbfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WutfR {
+            bits: u8,
+        }
+        impl WutfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsfR {
+            bits: u8,
+        }
+        impl TsfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsovfR {
+            bits: u8,
+        }
+        impl TsovfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1fR {
+            bits: u8,
+        }
+        impl Tamp1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp2fR {
+            bits: u8,
+        }
+        impl Tamp2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RecalpfR {
+            bits: u8,
+        }
+        impl RecalpfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ShpfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ShpfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RsfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RsfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlrafW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlrafW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlrbfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlrbfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WutfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WutfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsovfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsovfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Alarm A write flag" ]
+            # [ inline ( always ) ]
+            pub fn alrawf(&self) -> AlrawfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrawfR { bits }
+            }
+            # [ doc = "Bit 1 - Alarm B write flag" ]
+            # [ inline ( always ) ]
+            pub fn alrbwf(&self) -> AlrbwfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrbwfR { bits }
+            }
+            # [ doc = "Bit 2 - Wakeup timer write flag" ]
+            # [ inline ( always ) ]
+            pub fn wutwf(&self) -> WutwfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WutwfR { bits }
+            }
+            # [ doc = "Bit 3 - Shift operation pending" ]
+            # [ inline ( always ) ]
+            pub fn shpf(&self) -> ShpfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ShpfR { bits }
+            }
+            # [ doc = "Bit 4 - Initialization status flag" ]
+            # [ inline ( always ) ]
+            pub fn inits(&self) -> InitsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InitsR { bits }
+            }
+            # [ doc = "Bit 5 - Registers synchronization flag" ]
+            # [ inline ( always ) ]
+            pub fn rsf(&self) -> RsfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RsfR { bits }
+            }
+            # [ doc = "Bit 6 - Initialization flag" ]
+            # [ inline ( always ) ]
+            pub fn initf(&self) -> InitfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InitfR { bits }
+            }
+            # [ doc = "Bit 7 - Initialization mode" ]
+            # [ inline ( always ) ]
+            pub fn init(&self) -> InitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InitR { bits }
+            }
+            # [ doc = "Bit 8 - Alarm A flag" ]
+            # [ inline ( always ) ]
+            pub fn alraf(&self) -> AlrafR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrafR { bits }
+            }
+            # [ doc = "Bit 9 - Alarm B flag" ]
+            # [ inline ( always ) ]
+            pub fn alrbf(&self) -> AlrbfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlrbfR { bits }
+            }
+            # [ doc = "Bit 10 - Wakeup timer flag" ]
+            # [ inline ( always ) ]
+            pub fn wutf(&self) -> WutfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WutfR { bits }
+            }
+            # [ doc = "Bit 11 - Time-stamp flag" ]
+            # [ inline ( always ) ]
+            pub fn tsf(&self) -> TsfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsfR { bits }
+            }
+            # [ doc = "Bit 12 - Time-stamp overflow flag" ]
+            # [ inline ( always ) ]
+            pub fn tsovf(&self) -> TsovfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsovfR { bits }
+            }
+            # [ doc = "Bit 13 - Tamper detection flag" ]
+            # [ inline ( always ) ]
+            pub fn tamp1f(&self) -> Tamp1fR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1fR { bits }
+            }
+            # [ doc = "Bit 14 - TAMPER2 detection flag" ]
+            # [ inline ( always ) ]
+            pub fn tamp2f(&self) -> Tamp2fR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp2fR { bits }
+            }
+            # [ doc = "Bit 16 - Recalibration pending Flag" ]
+            # [ inline ( always ) ]
+            pub fn recalpf(&self) -> RecalpfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RecalpfR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 7 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 3 - Shift operation pending" ]
+            # [ inline ( always ) ]
+            pub fn shpf(&mut self) -> _ShpfW {
+                _ShpfW { w: self }
+            }
+            # [ doc = "Bit 5 - Registers synchronization flag" ]
+            # [ inline ( always ) ]
+            pub fn rsf(&mut self) -> _RsfW {
+                _RsfW { w: self }
+            }
+            # [ doc = "Bit 7 - Initialization mode" ]
+            # [ inline ( always ) ]
+            pub fn init(&mut self) -> _InitW {
+                _InitW { w: self }
+            }
+            # [ doc = "Bit 8 - Alarm A flag" ]
+            # [ inline ( always ) ]
+            pub fn alraf(&mut self) -> _AlrafW {
+                _AlrafW { w: self }
+            }
+            # [ doc = "Bit 9 - Alarm B flag" ]
+            # [ inline ( always ) ]
+            pub fn alrbf(&mut self) -> _AlrbfW {
+                _AlrbfW { w: self }
+            }
+            # [ doc = "Bit 10 - Wakeup timer flag" ]
+            # [ inline ( always ) ]
+            pub fn wutf(&mut self) -> _WutfW {
+                _WutfW { w: self }
+            }
+            # [ doc = "Bit 11 - Time-stamp flag" ]
+            # [ inline ( always ) ]
+            pub fn tsf(&mut self) -> _TsfW {
+                _TsfW { w: self }
+            }
+            # [ doc = "Bit 12 - Time-stamp overflow flag" ]
+            # [ inline ( always ) ]
+            pub fn tsovf(&mut self) -> _TsovfW {
+                _TsovfW { w: self }
+            }
+            # [ doc = "Bit 13 - Tamper detection flag" ]
+            # [ inline ( always ) ]
+            pub fn tamp1f(&mut self) -> _Tamp1fW {
+                _Tamp1fW { w: self }
+            }
+            # [ doc = "Bit 14 - TAMPER2 detection flag" ]
+            # [ inline ( always ) ]
+            pub fn tamp2f(&mut self) -> _Tamp2fW {
+                _Tamp2fW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler register" ]
+    pub struct Prer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler register" ]
+    pub mod prer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Prer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PredivAR {
+            bits: u8,
+        }
+        impl PredivAR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PredivSR {
+            bits: u16,
+        }
+        impl PredivSR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PredivAW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PredivAW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PredivSW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PredivSW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 32767;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:22 - Asynchronous prescaler factor" ]
+            # [ inline ( always ) ]
+            pub fn prediv_a(&self) -> PredivAR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PredivAR { bits }
+            }
+            # [ doc = "Bits 0:14 - Synchronous prescaler factor" ]
+            # [ inline ( always ) ]
+            pub fn prediv_s(&self) -> PredivSR {
+                let bits = {
+                    const MASK: u16 = 32767;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PredivSR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 8323327 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:22 - Asynchronous prescaler factor" ]
+            # [ inline ( always ) ]
+            pub fn prediv_a(&mut self) -> _PredivAW {
+                _PredivAW { w: self }
+            }
+            # [ doc = "Bits 0:14 - Synchronous prescaler factor" ]
+            # [ inline ( always ) ]
+            pub fn prediv_s(&mut self) -> _PredivSW {
+                _PredivSW { w: self }
+            }
+        }
+    }
+    # [ doc = "wakeup timer register" ]
+    pub struct Wutr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "wakeup timer register" ]
+    pub mod wutr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Wutr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WutR {
+            bits: u16,
+        }
+        impl WutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Wakeup auto-reload value bits" ]
+            # [ inline ( always ) ]
+            pub fn wut(&self) -> WutR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                WutR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 65535 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Wakeup auto-reload value bits" ]
+            # [ inline ( always ) ]
+            pub fn wut(&mut self) -> _WutW {
+                _WutW { w: self }
+            }
+        }
+    }
+    # [ doc = "calibration register" ]
+    pub struct Calibr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "calibration register" ]
+    pub mod calibr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Calibr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcsR {
+            bits: u8,
+        }
+        impl DcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcR {
+            bits: u8,
+        }
+        impl DcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Digital calibration sign" ]
+            # [ inline ( always ) ]
+            pub fn dcs(&self) -> DcsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcsR { bits }
+            }
+            # [ doc = "Bits 0:4 - Digital calibration" ]
+            # [ inline ( always ) ]
+            pub fn dc(&self) -> DcR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Digital calibration sign" ]
+            # [ inline ( always ) ]
+            pub fn dcs(&mut self) -> _DcsW {
+                _DcsW { w: self }
+            }
+            # [ doc = "Bits 0:4 - Digital calibration" ]
+            # [ inline ( always ) ]
+            pub fn dc(&mut self) -> _DcW {
+                _DcW { w: self }
+            }
+        }
+    }
+    # [ doc = "alarm A register" ]
+    pub struct Alrmar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "alarm A register" ]
+    pub mod alrmar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Alrmar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk4R {
+            bits: u8,
+        }
+        impl Msk4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdselR {
+            bits: u8,
+        }
+        impl WdselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtR {
+            bits: u8,
+        }
+        impl DtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DuR {
+            bits: u8,
+        }
+        impl DuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk3R {
+            bits: u8,
+        }
+        impl Msk3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmR {
+            bits: u8,
+        }
+        impl PmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtR {
+            bits: u8,
+        }
+        impl HtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HuR {
+            bits: u8,
+        }
+        impl HuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk2R {
+            bits: u8,
+        }
+        impl Msk2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MntR {
+            bits: u8,
+        }
+        impl MntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MnuR {
+            bits: u8,
+        }
+        impl MnuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk1R {
+            bits: u8,
+        }
+        impl Msk1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StR {
+            bits: u8,
+        }
+        impl StR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SuR {
+            bits: u8,
+        }
+        impl SuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MnuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MnuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - Alarm A date mask" ]
+            # [ inline ( always ) ]
+            pub fn msk4(&self) -> Msk4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk4R { bits }
+            }
+            # [ doc = "Bit 30 - Week day selection" ]
+            # [ inline ( always ) ]
+            pub fn wdsel(&self) -> WdselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdselR { bits }
+            }
+            # [ doc = "Bits 28:29 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&self) -> DtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtR { bits }
+            }
+            # [ doc = "Bits 24:27 - Date units or day in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&self) -> DuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DuR { bits }
+            }
+            # [ doc = "Bit 23 - Alarm A hours mask" ]
+            # [ inline ( always ) ]
+            pub fn msk3(&self) -> Msk3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk3R { bits }
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&self) -> PmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmR { bits }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&self) -> HtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtR { bits }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&self) -> HuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HuR { bits }
+            }
+            # [ doc = "Bit 15 - Alarm A minutes mask" ]
+            # [ inline ( always ) ]
+            pub fn msk2(&self) -> Msk2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk2R { bits }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&self) -> MntR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MntR { bits }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&self) -> MnuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MnuR { bits }
+            }
+            # [ doc = "Bit 7 - Alarm A seconds mask" ]
+            # [ inline ( always ) ]
+            pub fn msk1(&self) -> Msk1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk1R { bits }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&self) -> StR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StR { bits }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&self) -> SuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SuR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Alarm A date mask" ]
+            # [ inline ( always ) ]
+            pub fn msk4(&mut self) -> _Msk4W {
+                _Msk4W { w: self }
+            }
+            # [ doc = "Bit 30 - Week day selection" ]
+            # [ inline ( always ) ]
+            pub fn wdsel(&mut self) -> _WdselW {
+                _WdselW { w: self }
+            }
+            # [ doc = "Bits 28:29 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&mut self) -> _DtW {
+                _DtW { w: self }
+            }
+            # [ doc = "Bits 24:27 - Date units or day in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&mut self) -> _DuW {
+                _DuW { w: self }
+            }
+            # [ doc = "Bit 23 - Alarm A hours mask" ]
+            # [ inline ( always ) ]
+            pub fn msk3(&mut self) -> _Msk3W {
+                _Msk3W { w: self }
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&mut self) -> _PmW {
+                _PmW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&mut self) -> _HtW {
+                _HtW { w: self }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&mut self) -> _HuW {
+                _HuW { w: self }
+            }
+            # [ doc = "Bit 15 - Alarm A minutes mask" ]
+            # [ inline ( always ) ]
+            pub fn msk2(&mut self) -> _Msk2W {
+                _Msk2W { w: self }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&mut self) -> _MntW {
+                _MntW { w: self }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&mut self) -> _MnuW {
+                _MnuW { w: self }
+            }
+            # [ doc = "Bit 7 - Alarm A seconds mask" ]
+            # [ inline ( always ) ]
+            pub fn msk1(&mut self) -> _Msk1W {
+                _Msk1W { w: self }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&mut self) -> _StW {
+                _StW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&mut self) -> _SuW {
+                _SuW { w: self }
+            }
+        }
+    }
+    # [ doc = "alarm B register" ]
+    pub struct Alrmbr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "alarm B register" ]
+    pub mod alrmbr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Alrmbr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk4R {
+            bits: u8,
+        }
+        impl Msk4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdselR {
+            bits: u8,
+        }
+        impl WdselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtR {
+            bits: u8,
+        }
+        impl DtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DuR {
+            bits: u8,
+        }
+        impl DuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk3R {
+            bits: u8,
+        }
+        impl Msk3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmR {
+            bits: u8,
+        }
+        impl PmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtR {
+            bits: u8,
+        }
+        impl HtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HuR {
+            bits: u8,
+        }
+        impl HuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk2R {
+            bits: u8,
+        }
+        impl Msk2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MntR {
+            bits: u8,
+        }
+        impl MntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MnuR {
+            bits: u8,
+        }
+        impl MnuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Msk1R {
+            bits: u8,
+        }
+        impl Msk1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StR {
+            bits: u8,
+        }
+        impl StR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SuR {
+            bits: u8,
+        }
+        impl SuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MnuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MnuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Msk1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Msk1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - Alarm B date mask" ]
+            # [ inline ( always ) ]
+            pub fn msk4(&self) -> Msk4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk4R { bits }
+            }
+            # [ doc = "Bit 30 - Week day selection" ]
+            # [ inline ( always ) ]
+            pub fn wdsel(&self) -> WdselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdselR { bits }
+            }
+            # [ doc = "Bits 28:29 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&self) -> DtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtR { bits }
+            }
+            # [ doc = "Bits 24:27 - Date units or day in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&self) -> DuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DuR { bits }
+            }
+            # [ doc = "Bit 23 - Alarm B hours mask" ]
+            # [ inline ( always ) ]
+            pub fn msk3(&self) -> Msk3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk3R { bits }
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&self) -> PmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmR { bits }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&self) -> HtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HtR { bits }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&self) -> HuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HuR { bits }
+            }
+            # [ doc = "Bit 15 - Alarm B minutes mask" ]
+            # [ inline ( always ) ]
+            pub fn msk2(&self) -> Msk2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk2R { bits }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&self) -> MntR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MntR { bits }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&self) -> MnuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MnuR { bits }
+            }
+            # [ doc = "Bit 7 - Alarm B seconds mask" ]
+            # [ inline ( always ) ]
+            pub fn msk1(&self) -> Msk1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Msk1R { bits }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&self) -> StR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StR { bits }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&self) -> SuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SuR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Alarm B date mask" ]
+            # [ inline ( always ) ]
+            pub fn msk4(&mut self) -> _Msk4W {
+                _Msk4W { w: self }
+            }
+            # [ doc = "Bit 30 - Week day selection" ]
+            # [ inline ( always ) ]
+            pub fn wdsel(&mut self) -> _WdselW {
+                _WdselW { w: self }
+            }
+            # [ doc = "Bits 28:29 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&mut self) -> _DtW {
+                _DtW { w: self }
+            }
+            # [ doc = "Bits 24:27 - Date units or day in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&mut self) -> _DuW {
+                _DuW { w: self }
+            }
+            # [ doc = "Bit 23 - Alarm B hours mask" ]
+            # [ inline ( always ) ]
+            pub fn msk3(&mut self) -> _Msk3W {
+                _Msk3W { w: self }
+            }
+            # [ doc = "Bit 22 - AM/PM notation" ]
+            # [ inline ( always ) ]
+            pub fn pm(&mut self) -> _PmW {
+                _PmW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Hour tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn ht(&mut self) -> _HtW {
+                _HtW { w: self }
+            }
+            # [ doc = "Bits 16:19 - Hour units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn hu(&mut self) -> _HuW {
+                _HuW { w: self }
+            }
+            # [ doc = "Bit 15 - Alarm B minutes mask" ]
+            # [ inline ( always ) ]
+            pub fn msk2(&mut self) -> _Msk2W {
+                _Msk2W { w: self }
+            }
+            # [ doc = "Bits 12:14 - Minute tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnt(&mut self) -> _MntW {
+                _MntW { w: self }
+            }
+            # [ doc = "Bits 8:11 - Minute units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mnu(&mut self) -> _MnuW {
+                _MnuW { w: self }
+            }
+            # [ doc = "Bit 7 - Alarm B seconds mask" ]
+            # [ inline ( always ) ]
+            pub fn msk1(&mut self) -> _Msk1W {
+                _Msk1W { w: self }
+            }
+            # [ doc = "Bits 4:6 - Second tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn st(&mut self) -> _StW {
+                _StW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Second units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn su(&mut self) -> _SuW {
+                _SuW { w: self }
+            }
+        }
+    }
+    # [ doc = "write protection register" ]
+    pub struct Wpr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "write protection register" ]
+    pub mod wpr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Wpr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _KeyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _KeyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - Write protection key" ]
+            # [ inline ( always ) ]
+            pub fn key(&mut self) -> _KeyW {
+                _KeyW { w: self }
+            }
+        }
+    }
+    # [ doc = "sub second register" ]
+    pub struct Ssr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "sub second register" ]
+    pub mod ssr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ssr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsR {
+            bits: u16,
+        }
+        impl SsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Sub second value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&self) -> SsR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                SsR { bits }
+            }
+        }
+    }
+    # [ doc = "shift control register" ]
+    pub struct Shiftr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "shift control register" ]
+    pub mod shiftr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Shiftr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Add1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Add1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SubfsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SubfsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 32767;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - Add one second" ]
+            # [ inline ( always ) ]
+            pub fn add1s(&mut self) -> _Add1sW {
+                _Add1sW { w: self }
+            }
+            # [ doc = "Bits 0:14 - Subtract a fraction of a second" ]
+            # [ inline ( always ) ]
+            pub fn subfs(&mut self) -> _SubfsW {
+                _SubfsW { w: self }
+            }
+        }
+    }
+    # [ doc = "time stamp time register" ]
+    pub struct Tstr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "time stamp time register" ]
+    pub mod tstr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Tstr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlarmouttypeR {
+            bits: u8,
+        }
+        impl AlarmouttypeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsinselR {
+            bits: u8,
+        }
+        impl TsinselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1inselR {
+            bits: u8,
+        }
+        impl Tamp1inselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TampieR {
+            bits: u8,
+        }
+        impl TampieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1trgR {
+            bits: u8,
+        }
+        impl Tamp1trgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1eR {
+            bits: u8,
+        }
+        impl Tamp1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 18 - AFO_ALARM output type" ]
+            # [ inline ( always ) ]
+            pub fn alarmouttype(&self) -> AlarmouttypeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlarmouttypeR { bits }
+            }
+            # [ doc = "Bit 17 - TIMESTAMP mapping" ]
+            # [ inline ( always ) ]
+            pub fn tsinsel(&self) -> TsinselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsinselR { bits }
+            }
+            # [ doc = "Bit 16 - TAMPER1 mapping" ]
+            # [ inline ( always ) ]
+            pub fn tamp1insel(&self) -> Tamp1inselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1inselR { bits }
+            }
+            # [ doc = "Bit 2 - Tamper interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tampie(&self) -> TampieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TampieR { bits }
+            }
+            # [ doc = "Bit 1 - Active level for tamper 1" ]
+            # [ inline ( always ) ]
+            pub fn tamp1trg(&self) -> Tamp1trgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1trgR { bits }
+            }
+            # [ doc = "Bit 0 - Tamper 1 detection enable" ]
+            # [ inline ( always ) ]
+            pub fn tamp1e(&self) -> Tamp1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1eR { bits }
+            }
+        }
+    }
+    # [ doc = "time stamp date register" ]
+    pub struct Tsdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "time stamp date register" ]
+    pub mod tsdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Tsdr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WduR {
+            bits: u8,
+        }
+        impl WduR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MtR {
+            bits: u8,
+        }
+        impl MtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MuR {
+            bits: u8,
+        }
+        impl MuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtR {
+            bits: u8,
+        }
+        impl DtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DuR {
+            bits: u8,
+        }
+        impl DuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 13:15 - Week day units" ]
+            # [ inline ( always ) ]
+            pub fn wdu(&self) -> WduR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WduR { bits }
+            }
+            # [ doc = "Bit 12 - Month tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mt(&self) -> MtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MtR { bits }
+            }
+            # [ doc = "Bits 8:11 - Month units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn mu(&self) -> MuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MuR { bits }
+            }
+            # [ doc = "Bits 4:5 - Date tens in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn dt(&self) -> DtR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtR { bits }
+            }
+            # [ doc = "Bits 0:3 - Date units in BCD format" ]
+            # [ inline ( always ) ]
+            pub fn du(&self) -> DuR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DuR { bits }
+            }
+        }
+    }
+    # [ doc = "timestamp sub second register" ]
+    pub struct Tsssr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "timestamp sub second register" ]
+    pub mod tsssr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Tsssr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsR {
+            bits: u16,
+        }
+        impl SsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Sub second value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&self) -> SsR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                SsR { bits }
+            }
+        }
+    }
+    # [ doc = "calibration register" ]
+    pub struct Calr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "calibration register" ]
+    pub mod calr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Calr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CalpR {
+            bits: u8,
+        }
+        impl CalpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Calw8R {
+            bits: u8,
+        }
+        impl Calw8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Calw16R {
+            bits: u8,
+        }
+        impl Calw16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CalmR {
+            bits: u16,
+        }
+        impl CalmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CalpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CalpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Calw8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Calw8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Calw16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Calw16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CalmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CalmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Increase frequency of RTC by 488.5 ppm" ]
+            # [ inline ( always ) ]
+            pub fn calp(&self) -> CalpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CalpR { bits }
+            }
+            # [ doc = "Bit 14 - Use an 8-second calibration cycle period" ]
+            # [ inline ( always ) ]
+            pub fn calw8(&self) -> Calw8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Calw8R { bits }
+            }
+            # [ doc = "Bit 13 - Use a 16-second calibration cycle period" ]
+            # [ inline ( always ) ]
+            pub fn calw16(&self) -> Calw16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Calw16R { bits }
+            }
+            # [ doc = "Bits 0:8 - Calibration minus" ]
+            # [ inline ( always ) ]
+            pub fn calm(&self) -> CalmR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CalmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Increase frequency of RTC by 488.5 ppm" ]
+            # [ inline ( always ) ]
+            pub fn calp(&mut self) -> _CalpW {
+                _CalpW { w: self }
+            }
+            # [ doc = "Bit 14 - Use an 8-second calibration cycle period" ]
+            # [ inline ( always ) ]
+            pub fn calw8(&mut self) -> _Calw8W {
+                _Calw8W { w: self }
+            }
+            # [ doc = "Bit 13 - Use a 16-second calibration cycle period" ]
+            # [ inline ( always ) ]
+            pub fn calw16(&mut self) -> _Calw16W {
+                _Calw16W { w: self }
+            }
+            # [ doc = "Bits 0:8 - Calibration minus" ]
+            # [ inline ( always ) ]
+            pub fn calm(&mut self) -> _CalmW {
+                _CalmW { w: self }
+            }
+        }
+    }
+    # [ doc = "tamper and alternate function configuration register" ]
+    pub struct Tafcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "tamper and alternate function configuration register" ]
+    pub mod tafcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tafcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AlarmouttypeR {
+            bits: u8,
+        }
+        impl AlarmouttypeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsinselR {
+            bits: u8,
+        }
+        impl TsinselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1inselR {
+            bits: u8,
+        }
+        impl Tamp1inselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TamppudisR {
+            bits: u8,
+        }
+        impl TamppudisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TampprchR {
+            bits: u8,
+        }
+        impl TampprchR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TampfltR {
+            bits: u8,
+        }
+        impl TampfltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TampfreqR {
+            bits: u8,
+        }
+        impl TampfreqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TamptsR {
+            bits: u8,
+        }
+        impl TamptsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp2trgR {
+            bits: u8,
+        }
+        impl Tamp2trgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp2eR {
+            bits: u8,
+        }
+        impl Tamp2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TampieR {
+            bits: u8,
+        }
+        impl TampieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1trgR {
+            bits: u8,
+        }
+        impl Tamp1trgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tamp1eR {
+            bits: u8,
+        }
+        impl Tamp1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AlarmouttypeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AlarmouttypeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsinselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsinselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp1inselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp1inselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TamppudisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TamppudisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TampprchW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TampprchW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TampfltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TampfltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TampfreqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TampfreqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TamptsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TamptsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp2trgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp2trgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TampieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TampieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp1trgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp1trgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tamp1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tamp1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 18 - AFO_ALARM output type" ]
+            # [ inline ( always ) ]
+            pub fn alarmouttype(&self) -> AlarmouttypeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AlarmouttypeR { bits }
+            }
+            # [ doc = "Bit 17 - TIMESTAMP mapping" ]
+            # [ inline ( always ) ]
+            pub fn tsinsel(&self) -> TsinselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsinselR { bits }
+            }
+            # [ doc = "Bit 16 - TAMPER1 mapping" ]
+            # [ inline ( always ) ]
+            pub fn tamp1insel(&self) -> Tamp1inselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1inselR { bits }
+            }
+            # [ doc = "Bit 15 - TAMPER pull-up disable" ]
+            # [ inline ( always ) ]
+            pub fn tamppudis(&self) -> TamppudisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TamppudisR { bits }
+            }
+            # [ doc = "Bits 13:14 - Tamper precharge duration" ]
+            # [ inline ( always ) ]
+            pub fn tampprch(&self) -> TampprchR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TampprchR { bits }
+            }
+            # [ doc = "Bits 11:12 - Tamper filter count" ]
+            # [ inline ( always ) ]
+            pub fn tampflt(&self) -> TampfltR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TampfltR { bits }
+            }
+            # [ doc = "Bits 8:10 - Tamper sampling frequency" ]
+            # [ inline ( always ) ]
+            pub fn tampfreq(&self) -> TampfreqR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TampfreqR { bits }
+            }
+            # [ doc = "Bit 7 - Activate timestamp on tamper detection event" ]
+            # [ inline ( always ) ]
+            pub fn tampts(&self) -> TamptsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TamptsR { bits }
+            }
+            # [ doc = "Bit 4 - Active level for tamper 2" ]
+            # [ inline ( always ) ]
+            pub fn tamp2trg(&self) -> Tamp2trgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp2trgR { bits }
+            }
+            # [ doc = "Bit 3 - Tamper 2 detection enable" ]
+            # [ inline ( always ) ]
+            pub fn tamp2e(&self) -> Tamp2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp2eR { bits }
+            }
+            # [ doc = "Bit 2 - Tamper interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tampie(&self) -> TampieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TampieR { bits }
+            }
+            # [ doc = "Bit 1 - Active level for tamper 1" ]
+            # [ inline ( always ) ]
+            pub fn tamp1trg(&self) -> Tamp1trgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1trgR { bits }
+            }
+            # [ doc = "Bit 0 - Tamper 1 detection enable" ]
+            # [ inline ( always ) ]
+            pub fn tamp1e(&self) -> Tamp1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tamp1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 18 - AFO_ALARM output type" ]
+            # [ inline ( always ) ]
+            pub fn alarmouttype(&mut self) -> _AlarmouttypeW {
+                _AlarmouttypeW { w: self }
+            }
+            # [ doc = "Bit 17 - TIMESTAMP mapping" ]
+            # [ inline ( always ) ]
+            pub fn tsinsel(&mut self) -> _TsinselW {
+                _TsinselW { w: self }
+            }
+            # [ doc = "Bit 16 - TAMPER1 mapping" ]
+            # [ inline ( always ) ]
+            pub fn tamp1insel(&mut self) -> _Tamp1inselW {
+                _Tamp1inselW { w: self }
+            }
+            # [ doc = "Bit 15 - TAMPER pull-up disable" ]
+            # [ inline ( always ) ]
+            pub fn tamppudis(&mut self) -> _TamppudisW {
+                _TamppudisW { w: self }
+            }
+            # [ doc = "Bits 13:14 - Tamper precharge duration" ]
+            # [ inline ( always ) ]
+            pub fn tampprch(&mut self) -> _TampprchW {
+                _TampprchW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Tamper filter count" ]
+            # [ inline ( always ) ]
+            pub fn tampflt(&mut self) -> _TampfltW {
+                _TampfltW { w: self }
+            }
+            # [ doc = "Bits 8:10 - Tamper sampling frequency" ]
+            # [ inline ( always ) ]
+            pub fn tampfreq(&mut self) -> _TampfreqW {
+                _TampfreqW { w: self }
+            }
+            # [ doc = "Bit 7 - Activate timestamp on tamper detection event" ]
+            # [ inline ( always ) ]
+            pub fn tampts(&mut self) -> _TamptsW {
+                _TamptsW { w: self }
+            }
+            # [ doc = "Bit 4 - Active level for tamper 2" ]
+            # [ inline ( always ) ]
+            pub fn tamp2trg(&mut self) -> _Tamp2trgW {
+                _Tamp2trgW { w: self }
+            }
+            # [ doc = "Bit 3 - Tamper 2 detection enable" ]
+            # [ inline ( always ) ]
+            pub fn tamp2e(&mut self) -> _Tamp2eW {
+                _Tamp2eW { w: self }
+            }
+            # [ doc = "Bit 2 - Tamper interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tampie(&mut self) -> _TampieW {
+                _TampieW { w: self }
+            }
+            # [ doc = "Bit 1 - Active level for tamper 1" ]
+            # [ inline ( always ) ]
+            pub fn tamp1trg(&mut self) -> _Tamp1trgW {
+                _Tamp1trgW { w: self }
+            }
+            # [ doc = "Bit 0 - Tamper 1 detection enable" ]
+            # [ inline ( always ) ]
+            pub fn tamp1e(&mut self) -> _Tamp1eW {
+                _Tamp1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "alarm A sub second register" ]
+    pub struct Alrmassr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "alarm A sub second register" ]
+    pub mod alrmassr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Alrmassr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MaskssR {
+            bits: u8,
+        }
+        impl MaskssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsR {
+            bits: u16,
+        }
+        impl SsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MaskssW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MaskssW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 32767;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ]
+            # [ inline ( always ) ]
+            pub fn maskss(&self) -> MaskssR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MaskssR { bits }
+            }
+            # [ doc = "Bits 0:14 - Sub seconds value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&self) -> SsR {
+                let bits = {
+                    const MASK: u16 = 32767;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                SsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ]
+            # [ inline ( always ) ]
+            pub fn maskss(&mut self) -> _MaskssW {
+                _MaskssW { w: self }
+            }
+            # [ doc = "Bits 0:14 - Sub seconds value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&mut self) -> _SsW {
+                _SsW { w: self }
+            }
+        }
+    }
+    # [ doc = "alarm B sub second register" ]
+    pub struct Alrmbssr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "alarm B sub second register" ]
+    pub mod alrmbssr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Alrmbssr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MaskssR {
+            bits: u8,
+        }
+        impl MaskssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SsR {
+            bits: u16,
+        }
+        impl SsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MaskssW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MaskssW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 32767;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ]
+            # [ inline ( always ) ]
+            pub fn maskss(&self) -> MaskssR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MaskssR { bits }
+            }
+            # [ doc = "Bits 0:14 - Sub seconds value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&self) -> SsR {
+                let bits = {
+                    const MASK: u16 = 32767;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                SsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:27 - Mask the most-significant bits starting at this bit" ]
+            # [ inline ( always ) ]
+            pub fn maskss(&mut self) -> _MaskssW {
+                _MaskssW { w: self }
+            }
+            # [ doc = "Bits 0:14 - Sub seconds value" ]
+            # [ inline ( always ) ]
+            pub fn ss(&mut self) -> _SsW {
+                _SsW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp2r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp2r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp2r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp3r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp3r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp3r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp4r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp4r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp4r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp5r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp5r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp5r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp6r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp6r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp6r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp7r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp7r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp7r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp8r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp8r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp8r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp9r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp9r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp9r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp10r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp10r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp10r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp11r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp11r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp11r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp12r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp12r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp12r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp13r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp13r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp13r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp14r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp14r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp14r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp15r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp15r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp15r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp16r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp16r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp16r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp17r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp17r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp17r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp18r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp18r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp18r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+    # [ doc = "backup register" ]
+    pub struct Bkp19r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "backup register" ]
+    pub mod bkp19r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bkp19r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u32,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                BkpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - BKP" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Real-time clock" ]
+pub struct Rtc {
+    register_block: rtc::RegisterBlock,
+}
+impl Deref for Rtc {
+    type Target = rtc::RegisterBlock;
+    fn deref(&self) -> &rtc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub const UART4: Peripheral<Uart4> = unsafe { Peripheral::new(1073761280) };
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub mod uart4 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Status register" ]
+        pub sr: Sr,
+        # [ doc = "0x04 - Data register" ]
+        pub dr: Dr,
+        # [ doc = "0x08 - Baud rate register" ]
+        pub brr: Brr,
+        # [ doc = "0x0c - Control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x10 - Control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x14 - Control register 3" ]
+        pub cr3: Cr3,
+    }
+    # [ doc = "Status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbdR {
+            bits: u8,
+        }
+        impl LbdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxeR {
+            bits: u8,
+        }
+        impl TxeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcR {
+            bits: u8,
+        }
+        impl TcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxneR {
+            bits: u8,
+        }
+        impl RxneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdleR {
+            bits: u8,
+        }
+        impl IdleR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OreR {
+            bits: u8,
+        }
+        impl OreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NfR {
+            bits: u8,
+        }
+        impl NfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FeR {
+            bits: u8,
+        }
+        impl FeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PeR {
+            bits: u8,
+        }
+        impl PeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 8 - LIN break detection flag" ]
+            # [ inline ( always ) ]
+            pub fn lbd(&self) -> LbdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbdR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit data register empty" ]
+            # [ inline ( always ) ]
+            pub fn txe(&self) -> TxeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxeR { bits }
+            }
+            # [ doc = "Bit 6 - Transmission complete" ]
+            # [ inline ( always ) ]
+            pub fn tc(&self) -> TcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcR { bits }
+            }
+            # [ doc = "Bit 5 - Read data register not empty" ]
+            # [ inline ( always ) ]
+            pub fn rxne(&self) -> RxneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxneR { bits }
+            }
+            # [ doc = "Bit 4 - IDLE line detected" ]
+            # [ inline ( always ) ]
+            pub fn idle(&self) -> IdleR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdleR { bits }
+            }
+            # [ doc = "Bit 3 - Overrun error" ]
+            # [ inline ( always ) ]
+            pub fn ore(&self) -> OreR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OreR { bits }
+            }
+            # [ doc = "Bit 2 - Noise detected flag" ]
+            # [ inline ( always ) ]
+            pub fn nf(&self) -> NfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NfR { bits }
+            }
+            # [ doc = "Bit 1 - Framing error" ]
+            # [ inline ( always ) ]
+            pub fn fe(&self) -> FeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FeR { bits }
+            }
+            # [ doc = "Bit 0 - Parity error" ]
+            # [ inline ( always ) ]
+            pub fn pe(&self) -> PeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 12582912 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 8 - LIN break detection flag" ]
+            # [ inline ( always ) ]
+            pub fn lbd(&mut self) -> _LbdW {
+                _LbdW { w: self }
+            }
+            # [ doc = "Bit 6 - Transmission complete" ]
+            # [ inline ( always ) ]
+            pub fn tc(&mut self) -> _TcW {
+                _TcW { w: self }
+            }
+            # [ doc = "Bit 5 - Read data register not empty" ]
+            # [ inline ( always ) ]
+            pub fn rxne(&mut self) -> _RxneW {
+                _RxneW { w: self }
+            }
+        }
+    }
+    # [ doc = "Data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrR {
+            bits: u16,
+        }
+        impl DrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:8 - Data value" ]
+            # [ inline ( always ) ]
+            pub fn dr(&self) -> DrR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:8 - Data value" ]
+            # [ inline ( always ) ]
+            pub fn dr(&mut self) -> _DrW {
+                _DrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Baud rate register" ]
+    pub struct Brr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Baud rate register" ]
+    pub mod brr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Brr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DivMantissaR {
+            bits: u16,
+        }
+        impl DivMantissaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DivFractionR {
+            bits: u8,
+        }
+        impl DivFractionR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DivMantissaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DivMantissaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DivFractionW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DivFractionW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:15 - mantissa of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_mantissa(&self) -> DivMantissaR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DivMantissaR { bits }
+            }
+            # [ doc = "Bits 0:3 - fraction of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_fraction(&self) -> DivFractionR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DivFractionR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:15 - mantissa of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_mantissa(&mut self) -> _DivMantissaW {
+                _DivMantissaW { w: self }
+            }
+            # [ doc = "Bits 0:3 - fraction of USARTDIV" ]
+            # [ inline ( always ) ]
+            pub fn div_fraction(&mut self) -> _DivFractionW {
+                _DivFractionW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Over8R {
+            bits: u8,
+        }
+        impl Over8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UeR {
+            bits: u8,
+        }
+        impl UeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MR {
+            bits: u8,
+        }
+        impl MR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WakeR {
+            bits: u8,
+        }
+        impl WakeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PceR {
+            bits: u8,
+        }
+        impl PceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsR {
+            bits: u8,
+        }
+        impl PsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PeieR {
+            bits: u8,
+        }
+        impl PeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxeieR {
+            bits: u8,
+        }
+        impl TxeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TcieR {
+            bits: u8,
+        }
+        impl TcieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxneieR {
+            bits: u8,
+        }
+        impl RxneieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdleieR {
+            bits: u8,
+        }
+        impl IdleieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeR {
+            bits: u8,
+        }
+        impl TeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ReR {
+            bits: u8,
+        }
+        impl ReR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwuR {
+            bits: u8,
+        }
+        impl RwuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SbkR {
+            bits: u8,
+        }
+        impl SbkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Over8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Over8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WakeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WakeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TcieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TcieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxneieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxneieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdleieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdleieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ReW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ReW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SbkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SbkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Oversampling mode" ]
+            # [ inline ( always ) ]
+            pub fn over8(&self) -> Over8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Over8R { bits }
+            }
+            # [ doc = "Bit 13 - USART enable" ]
+            # [ inline ( always ) ]
+            pub fn ue(&self) -> UeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UeR { bits }
+            }
+            # [ doc = "Bit 12 - Word length" ]
+            # [ inline ( always ) ]
+            pub fn m(&self) -> MR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MR { bits }
+            }
+            # [ doc = "Bit 11 - Wakeup method" ]
+            # [ inline ( always ) ]
+            pub fn wake(&self) -> WakeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WakeR { bits }
+            }
+            # [ doc = "Bit 10 - Parity control enable" ]
+            # [ inline ( always ) ]
+            pub fn pce(&self) -> PceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PceR { bits }
+            }
+            # [ doc = "Bit 9 - Parity selection" ]
+            # [ inline ( always ) ]
+            pub fn ps(&self) -> PsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsR { bits }
+            }
+            # [ doc = "Bit 8 - PE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn peie(&self) -> PeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PeieR { bits }
+            }
+            # [ doc = "Bit 7 - TXE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&self) -> TxeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxeieR { bits }
+            }
+            # [ doc = "Bit 6 - Transmission complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&self) -> TcieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TcieR { bits }
+            }
+            # [ doc = "Bit 5 - RXNE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&self) -> RxneieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxneieR { bits }
+            }
+            # [ doc = "Bit 4 - IDLE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn idleie(&self) -> IdleieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdleieR { bits }
+            }
+            # [ doc = "Bit 3 - Transmitter enable" ]
+            # [ inline ( always ) ]
+            pub fn te(&self) -> TeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeR { bits }
+            }
+            # [ doc = "Bit 2 - Receiver enable" ]
+            # [ inline ( always ) ]
+            pub fn re(&self) -> ReR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ReR { bits }
+            }
+            # [ doc = "Bit 1 - Receiver wakeup" ]
+            # [ inline ( always ) ]
+            pub fn rwu(&self) -> RwuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwuR { bits }
+            }
+            # [ doc = "Bit 0 - Send break" ]
+            # [ inline ( always ) ]
+            pub fn sbk(&self) -> SbkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SbkR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Oversampling mode" ]
+            # [ inline ( always ) ]
+            pub fn over8(&mut self) -> _Over8W {
+                _Over8W { w: self }
+            }
+            # [ doc = "Bit 13 - USART enable" ]
+            # [ inline ( always ) ]
+            pub fn ue(&mut self) -> _UeW {
+                _UeW { w: self }
+            }
+            # [ doc = "Bit 12 - Word length" ]
+            # [ inline ( always ) ]
+            pub fn m(&mut self) -> _MW {
+                _MW { w: self }
+            }
+            # [ doc = "Bit 11 - Wakeup method" ]
+            # [ inline ( always ) ]
+            pub fn wake(&mut self) -> _WakeW {
+                _WakeW { w: self }
+            }
+            # [ doc = "Bit 10 - Parity control enable" ]
+            # [ inline ( always ) ]
+            pub fn pce(&mut self) -> _PceW {
+                _PceW { w: self }
+            }
+            # [ doc = "Bit 9 - Parity selection" ]
+            # [ inline ( always ) ]
+            pub fn ps(&mut self) -> _PsW {
+                _PsW { w: self }
+            }
+            # [ doc = "Bit 8 - PE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn peie(&mut self) -> _PeieW {
+                _PeieW { w: self }
+            }
+            # [ doc = "Bit 7 - TXE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn txeie(&mut self) -> _TxeieW {
+                _TxeieW { w: self }
+            }
+            # [ doc = "Bit 6 - Transmission complete interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tcie(&mut self) -> _TcieW {
+                _TcieW { w: self }
+            }
+            # [ doc = "Bit 5 - RXNE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn rxneie(&mut self) -> _RxneieW {
+                _RxneieW { w: self }
+            }
+            # [ doc = "Bit 4 - IDLE interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn idleie(&mut self) -> _IdleieW {
+                _IdleieW { w: self }
+            }
+            # [ doc = "Bit 3 - Transmitter enable" ]
+            # [ inline ( always ) ]
+            pub fn te(&mut self) -> _TeW {
+                _TeW { w: self }
+            }
+            # [ doc = "Bit 2 - Receiver enable" ]
+            # [ inline ( always ) ]
+            pub fn re(&mut self) -> _ReW {
+                _ReW { w: self }
+            }
+            # [ doc = "Bit 1 - Receiver wakeup" ]
+            # [ inline ( always ) ]
+            pub fn rwu(&mut self) -> _RwuW {
+                _RwuW { w: self }
+            }
+            # [ doc = "Bit 0 - Send break" ]
+            # [ inline ( always ) ]
+            pub fn sbk(&mut self) -> _SbkW {
+                _SbkW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LinenR {
+            bits: u8,
+        }
+        impl LinenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StopR {
+            bits: u8,
+        }
+        impl StopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbdieR {
+            bits: u8,
+        }
+        impl LbdieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbdlR {
+            bits: u8,
+        }
+        impl LbdlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AddR {
+            bits: u8,
+        }
+        impl AddR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LinenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LinenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbdlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbdlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AddW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AddW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - LIN mode enable" ]
+            # [ inline ( always ) ]
+            pub fn linen(&self) -> LinenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LinenR { bits }
+            }
+            # [ doc = "Bits 12:13 - STOP bits" ]
+            # [ inline ( always ) ]
+            pub fn stop(&self) -> StopR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StopR { bits }
+            }
+            # [ doc = "Bit 6 - LIN break detection interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lbdie(&self) -> LbdieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbdieR { bits }
+            }
+            # [ doc = "Bit 5 - lin break detection length" ]
+            # [ inline ( always ) ]
+            pub fn lbdl(&self) -> LbdlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbdlR { bits }
+            }
+            # [ doc = "Bits 0:3 - Address of the USART node" ]
+            # [ inline ( always ) ]
+            pub fn add(&self) -> AddR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AddR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - LIN mode enable" ]
+            # [ inline ( always ) ]
+            pub fn linen(&mut self) -> _LinenW {
+                _LinenW { w: self }
+            }
+            # [ doc = "Bits 12:13 - STOP bits" ]
+            # [ inline ( always ) ]
+            pub fn stop(&mut self) -> _StopW {
+                _StopW { w: self }
+            }
+            # [ doc = "Bit 6 - LIN break detection interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn lbdie(&mut self) -> _LbdieW {
+                _LbdieW { w: self }
+            }
+            # [ doc = "Bit 5 - lin break detection length" ]
+            # [ inline ( always ) ]
+            pub fn lbdl(&mut self) -> _LbdlW {
+                _LbdlW { w: self }
+            }
+            # [ doc = "Bits 0:3 - Address of the USART node" ]
+            # [ inline ( always ) ]
+            pub fn add(&mut self) -> _AddW {
+                _AddW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register 3" ]
+    pub struct Cr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register 3" ]
+    pub mod cr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OnebitR {
+            bits: u8,
+        }
+        impl OnebitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmatR {
+            bits: u8,
+        }
+        impl DmatR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmarR {
+            bits: u8,
+        }
+        impl DmarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HdselR {
+            bits: u8,
+        }
+        impl HdselR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrlpR {
+            bits: u8,
+        }
+        impl IrlpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IrenR {
+            bits: u8,
+        }
+        impl IrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EieR {
+            bits: u8,
+        }
+        impl EieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OnebitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OnebitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmatW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmatW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HdselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HdselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrlpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrlpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 11 - One sample bit method enable" ]
+            # [ inline ( always ) ]
+            pub fn onebit(&self) -> OnebitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OnebitR { bits }
+            }
+            # [ doc = "Bit 7 - DMA enable transmitter" ]
+            # [ inline ( always ) ]
+            pub fn dmat(&self) -> DmatR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmatR { bits }
+            }
+            # [ doc = "Bit 6 - DMA enable receiver" ]
+            # [ inline ( always ) ]
+            pub fn dmar(&self) -> DmarR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmarR { bits }
+            }
+            # [ doc = "Bit 3 - Half-duplex selection" ]
+            # [ inline ( always ) ]
+            pub fn hdsel(&self) -> HdselR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HdselR { bits }
+            }
+            # [ doc = "Bit 2 - IrDA low-power" ]
+            # [ inline ( always ) ]
+            pub fn irlp(&self) -> IrlpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrlpR { bits }
+            }
+            # [ doc = "Bit 1 - IrDA mode enable" ]
+            # [ inline ( always ) ]
+            pub fn iren(&self) -> IrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IrenR { bits }
+            }
+            # [ doc = "Bit 0 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eie(&self) -> EieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 11 - One sample bit method enable" ]
+            # [ inline ( always ) ]
+            pub fn onebit(&mut self) -> _OnebitW {
+                _OnebitW { w: self }
+            }
+            # [ doc = "Bit 7 - DMA enable transmitter" ]
+            # [ inline ( always ) ]
+            pub fn dmat(&mut self) -> _DmatW {
+                _DmatW { w: self }
+            }
+            # [ doc = "Bit 6 - DMA enable receiver" ]
+            # [ inline ( always ) ]
+            pub fn dmar(&mut self) -> _DmarW {
+                _DmarW { w: self }
+            }
+            # [ doc = "Bit 3 - Half-duplex selection" ]
+            # [ inline ( always ) ]
+            pub fn hdsel(&mut self) -> _HdselW {
+                _HdselW { w: self }
+            }
+            # [ doc = "Bit 2 - IrDA low-power" ]
+            # [ inline ( always ) ]
+            pub fn irlp(&mut self) -> _IrlpW {
+                _IrlpW { w: self }
+            }
+            # [ doc = "Bit 1 - IrDA mode enable" ]
+            # [ inline ( always ) ]
+            pub fn iren(&mut self) -> _IrenW {
+                _IrenW { w: self }
+            }
+            # [ doc = "Bit 0 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eie(&mut self) -> _EieW {
+                _EieW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Universal synchronous asynchronous receiver transmitter" ]
+pub struct Uart4 {
+    register_block: uart4::RegisterBlock,
+}
+impl Deref for Uart4 {
+    type Target = uart4::RegisterBlock;
+    fn deref(&self) -> &uart4::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "UART5" ]
+pub const UART5: Peripheral<Uart5> = unsafe { Peripheral::new(1073762304) };
+# [ doc = r" Register block" ]
+pub struct Uart5 {
+    register_block: uart4::RegisterBlock,
+}
+impl Deref for Uart5 {
+    type Target = uart4::RegisterBlock;
+    fn deref(&self) -> &uart4::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Common ADC registers" ]
+pub const C_ADC: Peripheral<CAdc> = unsafe { Peripheral::new(1073816320) };
+# [ doc = "Common ADC registers" ]
+pub mod c_adc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - ADC Common status register" ]
+        pub csr: Csr,
+        # [ doc = "0x04 - ADC common control register" ]
+        pub ccr: Ccr,
+        # [ doc = "0x08 - ADC common regular data register for dual and triple modes" ]
+        pub cdr: Cdr,
+    }
+    # [ doc = "ADC Common status register" ]
+    pub struct Csr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "ADC Common status register" ]
+    pub mod csr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Csr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ovr3R {
+            bits: u8,
+        }
+        impl Ovr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Strt3R {
+            bits: u8,
+        }
+        impl Strt3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jstrt3R {
+            bits: u8,
+        }
+        impl Jstrt3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jeoc3R {
+            bits: u8,
+        }
+        impl Jeoc3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Eoc3R {
+            bits: u8,
+        }
+        impl Eoc3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Awd3R {
+            bits: u8,
+        }
+        impl Awd3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ovr2R {
+            bits: u8,
+        }
+        impl Ovr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Strt2R {
+            bits: u8,
+        }
+        impl Strt2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jstrt2R {
+            bits: u8,
+        }
+        impl Jstrt2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jeoc2R {
+            bits: u8,
+        }
+        impl Jeoc2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Eoc2R {
+            bits: u8,
+        }
+        impl Eoc2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Awd2R {
+            bits: u8,
+        }
+        impl Awd2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ovr1R {
+            bits: u8,
+        }
+        impl Ovr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Strt1R {
+            bits: u8,
+        }
+        impl Strt1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jstrt1R {
+            bits: u8,
+        }
+        impl Jstrt1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Jeoc1R {
+            bits: u8,
+        }
+        impl Jeoc1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Eoc1R {
+            bits: u8,
+        }
+        impl Eoc1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Awd1R {
+            bits: u8,
+        }
+        impl Awd1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 21 - Overrun flag of ADC3" ]
+            # [ inline ( always ) ]
+            pub fn ovr3(&self) -> Ovr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ovr3R { bits }
+            }
+            # [ doc = "Bit 20 - Regular channel Start flag of ADC 3" ]
+            # [ inline ( always ) ]
+            pub fn strt3(&self) -> Strt3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Strt3R { bits }
+            }
+            # [ doc = "Bit 19 - Injected channel Start flag of ADC 3" ]
+            # [ inline ( always ) ]
+            pub fn jstrt3(&self) -> Jstrt3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jstrt3R { bits }
+            }
+            # [ doc = "Bit 18 - Injected channel end of conversion of ADC 3" ]
+            # [ inline ( always ) ]
+            pub fn jeoc3(&self) -> Jeoc3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jeoc3R { bits }
+            }
+            # [ doc = "Bit 17 - End of conversion of ADC 3" ]
+            # [ inline ( always ) ]
+            pub fn eoc3(&self) -> Eoc3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Eoc3R { bits }
+            }
+            # [ doc = "Bit 16 - Analog watchdog flag of ADC 3" ]
+            # [ inline ( always ) ]
+            pub fn awd3(&self) -> Awd3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Awd3R { bits }
+            }
+            # [ doc = "Bit 13 - Overrun flag of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn ovr2(&self) -> Ovr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ovr2R { bits }
+            }
+            # [ doc = "Bit 12 - Regular channel Start flag of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn strt2(&self) -> Strt2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Strt2R { bits }
+            }
+            # [ doc = "Bit 11 - Injected channel Start flag of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn jstrt2(&self) -> Jstrt2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jstrt2R { bits }
+            }
+            # [ doc = "Bit 10 - Injected channel end of conversion of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn jeoc2(&self) -> Jeoc2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jeoc2R { bits }
+            }
+            # [ doc = "Bit 9 - End of conversion of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn eoc2(&self) -> Eoc2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Eoc2R { bits }
+            }
+            # [ doc = "Bit 8 - Analog watchdog flag of ADC 2" ]
+            # [ inline ( always ) ]
+            pub fn awd2(&self) -> Awd2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Awd2R { bits }
+            }
+            # [ doc = "Bit 5 - Overrun flag of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn ovr1(&self) -> Ovr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ovr1R { bits }
+            }
+            # [ doc = "Bit 4 - Regular channel Start flag of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn strt1(&self) -> Strt1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Strt1R { bits }
+            }
+            # [ doc = "Bit 3 - Injected channel Start flag of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn jstrt1(&self) -> Jstrt1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jstrt1R { bits }
+            }
+            # [ doc = "Bit 2 - Injected channel end of conversion of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn jeoc1(&self) -> Jeoc1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Jeoc1R { bits }
+            }
+            # [ doc = "Bit 1 - End of conversion of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn eoc1(&self) -> Eoc1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Eoc1R { bits }
+            }
+            # [ doc = "Bit 0 - Analog watchdog flag of ADC 1" ]
+            # [ inline ( always ) ]
+            pub fn awd1(&self) -> Awd1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Awd1R { bits }
+            }
+        }
+    }
+    # [ doc = "ADC common control register" ]
+    pub struct Ccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "ADC common control register" ]
+    pub mod ccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsvrefeR {
+            bits: u8,
+        }
+        impl TsvrefeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbateR {
+            bits: u8,
+        }
+        impl VbateR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AdcpreR {
+            bits: u8,
+        }
+        impl AdcpreR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaR {
+            bits: u8,
+        }
+        impl DmaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DdsR {
+            bits: u8,
+        }
+        impl DdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DelayR {
+            bits: u8,
+        }
+        impl DelayR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MultR {
+            bits: u8,
+        }
+        impl MultR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsvrefeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsvrefeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbateW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbateW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AdcpreW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AdcpreW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DelayW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DelayW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MultW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MultW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 23 - Temperature sensor and VREFINT enable" ]
+            # [ inline ( always ) ]
+            pub fn tsvrefe(&self) -> TsvrefeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsvrefeR { bits }
+            }
+            # [ doc = "Bit 22 - VBAT enable" ]
+            # [ inline ( always ) ]
+            pub fn vbate(&self) -> VbateR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VbateR { bits }
+            }
+            # [ doc = "Bits 16:17 - ADC prescaler" ]
+            # [ inline ( always ) ]
+            pub fn adcpre(&self) -> AdcpreR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AdcpreR { bits }
+            }
+            # [ doc = "Bits 14:15 - Direct memory access mode for multi ADC mode" ]
+            # [ inline ( always ) ]
+            pub fn dma(&self) -> DmaR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmaR { bits }
+            }
+            # [ doc = "Bit 13 - DMA disable selection for multi-ADC mode" ]
+            # [ inline ( always ) ]
+            pub fn dds(&self) -> DdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DdsR { bits }
+            }
+            # [ doc = "Bits 8:11 - Delay between 2 sampling phases" ]
+            # [ inline ( always ) ]
+            pub fn delay(&self) -> DelayR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DelayR { bits }
+            }
+            # [ doc = "Bits 0:4 - Multi ADC mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mult(&self) -> MultR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MultR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - Temperature sensor and VREFINT enable" ]
+            # [ inline ( always ) ]
+            pub fn tsvrefe(&mut self) -> _TsvrefeW {
+                _TsvrefeW { w: self }
+            }
+            # [ doc = "Bit 22 - VBAT enable" ]
+            # [ inline ( always ) ]
+            pub fn vbate(&mut self) -> _VbateW {
+                _VbateW { w: self }
+            }
+            # [ doc = "Bits 16:17 - ADC prescaler" ]
+            # [ inline ( always ) ]
+            pub fn adcpre(&mut self) -> _AdcpreW {
+                _AdcpreW { w: self }
+            }
+            # [ doc = "Bits 14:15 - Direct memory access mode for multi ADC mode" ]
+            # [ inline ( always ) ]
+            pub fn dma(&mut self) -> _DmaW {
+                _DmaW { w: self }
+            }
+            # [ doc = "Bit 13 - DMA disable selection for multi-ADC mode" ]
+            # [ inline ( always ) ]
+            pub fn dds(&mut self) -> _DdsW {
+                _DdsW { w: self }
+            }
+            # [ doc = "Bits 8:11 - Delay between 2 sampling phases" ]
+            # [ inline ( always ) ]
+            pub fn delay(&mut self) -> _DelayW {
+                _DelayW { w: self }
+            }
+            # [ doc = "Bits 0:4 - Multi ADC mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mult(&mut self) -> _MultW {
+                _MultW { w: self }
+            }
+        }
+    }
+    # [ doc = "ADC common regular data register for dual and triple modes" ]
+    pub struct Cdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "ADC common regular data register for dual and triple modes" ]
+    pub mod cdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Cdr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u16,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u16,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - 2nd data item of a pair of regular conversions" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 0:15 - 1st data item of a pair of regular conversions" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Data1R { bits }
+            }
+        }
+    }
+}
+# [ doc = "Common ADC registers" ]
+pub struct CAdc {
+    register_block: c_adc::RegisterBlock,
+}
+impl Deref for CAdc {
+    type Target = c_adc::RegisterBlock;
+    fn deref(&self) -> &c_adc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Advanced-timers" ]
+pub const TIM1: Peripheral<Tim1> = unsafe { Peripheral::new(1073807360) };
+# [ doc = "Advanced-timers" ]
+pub mod tim1 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - slave mode control register" ]
+        pub smcr: Smcr,
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ]
+        pub ccmr2_output: Ccmr2Output,
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        # [ doc = "0x30 - repetition counter register" ]
+        pub rcr: Rcr,
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        # [ doc = "0x38 - capture/compare register 2" ]
+        pub ccr2: Ccr2,
+        # [ doc = "0x3c - capture/compare register 3" ]
+        pub ccr3: Ccr3,
+        # [ doc = "0x40 - capture/compare register 4" ]
+        pub ccr4: Ccr4,
+        # [ doc = "0x44 - break and dead-time register" ]
+        pub bdtr: Bdtr,
+        # [ doc = "0x48 - DMA control register" ]
+        pub dcr: Dcr,
+        # [ doc = "0x4c - DMA address for full transfer" ]
+        pub dmar: Dmar,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmsR {
+            bits: u8,
+        }
+        impl CmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&self) -> CmsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmsR { bits }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&mut self) -> _CmsW {
+                _CmsW { w: self }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois4R {
+            bits: u8,
+        }
+        impl Ois4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois3nR {
+            bits: u8,
+        }
+        impl Ois3nR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois3R {
+            bits: u8,
+        }
+        impl Ois3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois2nR {
+            bits: u8,
+        }
+        impl Ois2nR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois2R {
+            bits: u8,
+        }
+        impl Ois2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois1nR {
+            bits: u8,
+        }
+        impl Ois1nR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ois1R {
+            bits: u8,
+        }
+        impl Ois1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ti1sR {
+            bits: u8,
+        }
+        impl Ti1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcdsR {
+            bits: u8,
+        }
+        impl CcdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcusR {
+            bits: u8,
+        }
+        impl CcusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcpcR {
+            bits: u8,
+        }
+        impl CcpcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois3nW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois3nW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois2nW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois2nW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois1nW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois1nW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ois1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ois1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ti1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ti1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcpcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcpcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - Output Idle state 4" ]
+            # [ inline ( always ) ]
+            pub fn ois4(&self) -> Ois4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois4R { bits }
+            }
+            # [ doc = "Bit 13 - Output Idle state 3" ]
+            # [ inline ( always ) ]
+            pub fn ois3n(&self) -> Ois3nR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois3nR { bits }
+            }
+            # [ doc = "Bit 12 - Output Idle state 3" ]
+            # [ inline ( always ) ]
+            pub fn ois3(&self) -> Ois3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois3R { bits }
+            }
+            # [ doc = "Bit 11 - Output Idle state 2" ]
+            # [ inline ( always ) ]
+            pub fn ois2n(&self) -> Ois2nR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois2nR { bits }
+            }
+            # [ doc = "Bit 10 - Output Idle state 2" ]
+            # [ inline ( always ) ]
+            pub fn ois2(&self) -> Ois2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois2R { bits }
+            }
+            # [ doc = "Bit 9 - Output Idle state 1" ]
+            # [ inline ( always ) ]
+            pub fn ois1n(&self) -> Ois1nR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois1nR { bits }
+            }
+            # [ doc = "Bit 8 - Output Idle state 1" ]
+            # [ inline ( always ) ]
+            pub fn ois1(&self) -> Ois1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ois1R { bits }
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&self) -> Ti1sR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ti1sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&self) -> CcdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcdsR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/compare control update selection" ]
+            # [ inline ( always ) ]
+            pub fn ccus(&self) -> CcusR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcusR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/compare preloaded control" ]
+            # [ inline ( always ) ]
+            pub fn ccpc(&self) -> CcpcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcpcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - Output Idle state 4" ]
+            # [ inline ( always ) ]
+            pub fn ois4(&mut self) -> _Ois4W {
+                _Ois4W { w: self }
+            }
+            # [ doc = "Bit 13 - Output Idle state 3" ]
+            # [ inline ( always ) ]
+            pub fn ois3n(&mut self) -> _Ois3nW {
+                _Ois3nW { w: self }
+            }
+            # [ doc = "Bit 12 - Output Idle state 3" ]
+            # [ inline ( always ) ]
+            pub fn ois3(&mut self) -> _Ois3W {
+                _Ois3W { w: self }
+            }
+            # [ doc = "Bit 11 - Output Idle state 2" ]
+            # [ inline ( always ) ]
+            pub fn ois2n(&mut self) -> _Ois2nW {
+                _Ois2nW { w: self }
+            }
+            # [ doc = "Bit 10 - Output Idle state 2" ]
+            # [ inline ( always ) ]
+            pub fn ois2(&mut self) -> _Ois2W {
+                _Ois2W { w: self }
+            }
+            # [ doc = "Bit 9 - Output Idle state 1" ]
+            # [ inline ( always ) ]
+            pub fn ois1n(&mut self) -> _Ois1nW {
+                _Ois1nW { w: self }
+            }
+            # [ doc = "Bit 8 - Output Idle state 1" ]
+            # [ inline ( always ) ]
+            pub fn ois1(&mut self) -> _Ois1W {
+                _Ois1W { w: self }
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&mut self) -> _Ti1sW {
+                _Ti1sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&mut self) -> _CcdsW {
+                _CcdsW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare control update selection" ]
+            # [ inline ( always ) ]
+            pub fn ccus(&mut self) -> _CcusW {
+                _CcusW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/compare preloaded control" ]
+            # [ inline ( always ) ]
+            pub fn ccpc(&mut self) -> _CcpcW {
+                _CcpcW { w: self }
+            }
+        }
+    }
+    # [ doc = "slave mode control register" ]
+    pub struct Smcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "slave mode control register" ]
+    pub mod smcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpR {
+            bits: u8,
+        }
+        impl EtpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EceR {
+            bits: u8,
+        }
+        impl EceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpsR {
+            bits: u8,
+        }
+        impl EtpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtfR {
+            bits: u8,
+        }
+        impl EtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsmR {
+            bits: u8,
+        }
+        impl MsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmsR {
+            bits: u8,
+        }
+        impl SmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&self) -> EtpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpR { bits }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&self) -> EceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EceR { bits }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&self) -> EtpsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpsR { bits }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&self) -> EtfR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtfR { bits }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&self) -> MsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsmR { bits }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&self) -> SmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&mut self) -> _EtpW {
+                _EtpW { w: self }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&mut self) -> _EceW {
+                _EceW { w: self }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&mut self) -> _EtpsW {
+                _EtpsW { w: self }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&mut self) -> _EtfW {
+                _EtfW { w: self }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&mut self) -> _MsmW {
+                _MsmW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&mut self) -> _SmsW {
+                _SmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TdeR {
+            bits: u8,
+        }
+        impl TdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComdeR {
+            bits: u8,
+        }
+        impl ComdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4deR {
+            bits: u8,
+        }
+        impl Cc4deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3deR {
+            bits: u8,
+        }
+        impl Cc3deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2deR {
+            bits: u8,
+        }
+        impl Cc2deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1deR {
+            bits: u8,
+        }
+        impl Cc1deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdeR {
+            bits: u8,
+        }
+        impl UdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ieR {
+            bits: u8,
+        }
+        impl Cc4ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ieR {
+            bits: u8,
+        }
+        impl Cc3ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ieR {
+            bits: u8,
+        }
+        impl Cc2ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BieR {
+            bits: u8,
+        }
+        impl BieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComieR {
+            bits: u8,
+        }
+        impl ComieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&self) -> TdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TdeR { bits }
+            }
+            # [ doc = "Bit 13 - COM DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn comde(&self) -> ComdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComdeR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&self) -> Cc4deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4deR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&self) -> Cc3deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3deR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&self) -> Cc2deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2deR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&self) -> Cc1deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1deR { bits }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&self) -> UdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdeR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&self) -> Cc4ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ieR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&self) -> Cc3ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ieR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&self) -> Cc2ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ieR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+            # [ doc = "Bit 7 - Break interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn bie(&self) -> BieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BieR { bits }
+            }
+            # [ doc = "Bit 5 - COM interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn comie(&self) -> ComieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&mut self) -> _TdeW {
+                _TdeW { w: self }
+            }
+            # [ doc = "Bit 13 - COM DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn comde(&mut self) -> _ComdeW {
+                _ComdeW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&mut self) -> _Cc4deW {
+                _Cc4deW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&mut self) -> _Cc3deW {
+                _Cc3deW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&mut self) -> _Cc2deW {
+                _Cc2deW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&mut self) -> _Cc1deW {
+                _Cc1deW { w: self }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&mut self) -> _UdeW {
+                _UdeW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&mut self) -> _Cc4ieW {
+                _Cc4ieW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&mut self) -> _Cc3ieW {
+                _Cc3ieW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&mut self) -> _Cc2ieW {
+                _Cc2ieW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+            # [ doc = "Bit 7 - Break interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn bie(&mut self) -> _BieW {
+                _BieW { w: self }
+            }
+            # [ doc = "Bit 5 - COM interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn comie(&mut self) -> _ComieW {
+                _ComieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ofR {
+            bits: u8,
+        }
+        impl Cc4ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ofR {
+            bits: u8,
+        }
+        impl Cc3ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ofR {
+            bits: u8,
+        }
+        impl Cc2ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BifR {
+            bits: u8,
+        }
+        impl BifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifR {
+            bits: u8,
+        }
+        impl TifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComifR {
+            bits: u8,
+        }
+        impl ComifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ifR {
+            bits: u8,
+        }
+        impl Cc4ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ifR {
+            bits: u8,
+        }
+        impl Cc3ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ifR {
+            bits: u8,
+        }
+        impl Cc2ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&self) -> Cc4ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ofR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&self) -> Cc3ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ofR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&self) -> Cc2ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ofR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 7 - Break interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn bif(&self) -> BifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BifR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&self) -> TifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifR { bits }
+            }
+            # [ doc = "Bit 5 - COM interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn comif(&self) -> ComifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComifR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&self) -> Cc4ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ifR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&self) -> Cc3ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ifR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&self) -> Cc2ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ifR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&mut self) -> _Cc4ofW {
+                _Cc4ofW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&mut self) -> _Cc3ofW {
+                _Cc3ofW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&mut self) -> _Cc2ofW {
+                _Cc2ofW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 7 - Break interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn bif(&mut self) -> _BifW {
+                _BifW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&mut self) -> _TifW {
+                _TifW { w: self }
+            }
+            # [ doc = "Bit 5 - COM interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn comif(&mut self) -> _ComifW {
+                _ComifW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&mut self) -> _Cc4ifW {
+                _Cc4ifW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&mut self) -> _Cc3ifW {
+                _Cc3ifW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&mut self) -> _Cc2ifW {
+                _Cc2ifW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Break generation" ]
+            # [ inline ( always ) ]
+            pub fn bg(&mut self) -> _BgW {
+                _BgW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger generation" ]
+            # [ inline ( always ) ]
+            pub fn tg(&mut self) -> _TgW {
+                _TgW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare control update generation" ]
+            # [ inline ( always ) ]
+            pub fn comg(&mut self) -> _ComgW {
+                _ComgW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/compare 4 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc4g(&mut self) -> _Cc4gW {
+                _Cc4gW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare 3 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc3g(&mut self) -> _Cc3gW {
+                _Cc3gW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare 2 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc2g(&mut self) -> _Cc2gW {
+                _Cc2gW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2ceR {
+            bits: u8,
+        }
+        impl Oc2ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2mR {
+            bits: u8,
+        }
+        impl Oc2mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2peR {
+            bits: u8,
+        }
+        impl Oc2peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2feR {
+            bits: u8,
+        }
+        impl Oc2feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1ceR {
+            bits: u8,
+        }
+        impl Oc1ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Output Compare 2 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&self) -> Oc2ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - Output Compare 2 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&self) -> Oc2mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2mR { bits }
+            }
+            # [ doc = "Bit 11 - Output Compare 2 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&self) -> Oc2peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2peR { bits }
+            }
+            # [ doc = "Bit 10 - Output Compare 2 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&self) -> Oc2feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2feR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bit 7 - Output Compare 1 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&self) -> Oc1ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Output Compare 2 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&mut self) -> _Oc2ceW {
+                _Oc2ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - Output Compare 2 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&mut self) -> _Oc2mW {
+                _Oc2mW { w: self }
+            }
+            # [ doc = "Bit 11 - Output Compare 2 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&mut self) -> _Oc2peW {
+                _Oc2peW { w: self }
+            }
+            # [ doc = "Bit 10 - Output Compare 2 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&mut self) -> _Oc2feW {
+                _Oc2feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bit 7 - Output Compare 1 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&mut self) -> _Oc1ceW {
+                _Oc1ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2fR {
+            bits: u8,
+        }
+        impl Ic2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2pcsR {
+            bits: u8,
+        }
+        impl Ic2pcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2pcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2pcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&self) -> Ic2fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&self) -> Ic2pcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2pcsR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&mut self) -> _Ic2fW {
+                _Ic2fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&mut self) -> _Ic2pcsW {
+                _Ic2pcsW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub struct Ccmr2Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub mod ccmr2_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4ceR {
+            bits: u8,
+        }
+        impl Oc4ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4mR {
+            bits: u8,
+        }
+        impl Oc4mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4peR {
+            bits: u8,
+        }
+        impl Oc4peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4feR {
+            bits: u8,
+        }
+        impl Oc4feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3ceR {
+            bits: u8,
+        }
+        impl Oc3ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3mR {
+            bits: u8,
+        }
+        impl Oc3mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3peR {
+            bits: u8,
+        }
+        impl Oc3peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3feR {
+            bits: u8,
+        }
+        impl Oc3feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Output compare 4 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4ce(&self) -> Oc4ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - Output compare 4 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&self) -> Oc4mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4mR { bits }
+            }
+            # [ doc = "Bit 11 - Output compare 4 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&self) -> Oc4peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4peR { bits }
+            }
+            # [ doc = "Bit 10 - Output compare 4 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&self) -> Oc4feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4feR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bit 7 - Output compare 3 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&self) -> Oc3ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - Output compare 3 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&self) -> Oc3mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3mR { bits }
+            }
+            # [ doc = "Bit 3 - Output compare 3 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&self) -> Oc3peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3peR { bits }
+            }
+            # [ doc = "Bit 2 - Output compare 3 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&self) -> Oc3feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3feR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Output compare 4 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4ce(&mut self) -> _Oc4ceW {
+                _Oc4ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - Output compare 4 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&mut self) -> _Oc4mW {
+                _Oc4mW { w: self }
+            }
+            # [ doc = "Bit 11 - Output compare 4 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&mut self) -> _Oc4peW {
+                _Oc4peW { w: self }
+            }
+            # [ doc = "Bit 10 - Output compare 4 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&mut self) -> _Oc4feW {
+                _Oc4feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bit 7 - Output compare 3 clear enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&mut self) -> _Oc3ceW {
+                _Oc3ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Output compare 3 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&mut self) -> _Oc3mW {
+                _Oc3mW { w: self }
+            }
+            # [ doc = "Bit 3 - Output compare 3 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&mut self) -> _Oc3peW {
+                _Oc3peW { w: self }
+            }
+            # [ doc = "Bit 2 - Output compare 3 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&mut self) -> _Oc3feW {
+                _Oc3feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub struct Ccmr2Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub mod ccmr2_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4fR {
+            bits: u8,
+        }
+        impl Ic4fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4pscR {
+            bits: u8,
+        }
+        impl Ic4pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3fR {
+            bits: u8,
+        }
+        impl Ic3fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3pscR {
+            bits: u8,
+        }
+        impl Ic3pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&self) -> Ic4fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&self) -> Ic4pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4pscR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&self) -> Ic3fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&self) -> Ic3pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3pscR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&mut self) -> _Ic4fW {
+                _Ic4fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&mut self) -> _Ic4pscW {
+                _Ic4pscW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&mut self) -> _Ic3fW {
+                _Ic3fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&mut self) -> _Ic3pscW {
+                _Ic3pscW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4pR {
+            bits: u8,
+        }
+        impl Cc4pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4eR {
+            bits: u8,
+        }
+        impl Cc4eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3npR {
+            bits: u8,
+        }
+        impl Cc3npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3neR {
+            bits: u8,
+        }
+        impl Cc3neR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3pR {
+            bits: u8,
+        }
+        impl Cc3pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3eR {
+            bits: u8,
+        }
+        impl Cc3eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2npR {
+            bits: u8,
+        }
+        impl Cc2npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2neR {
+            bits: u8,
+        }
+        impl Cc2neR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2pR {
+            bits: u8,
+        }
+        impl Cc2pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2eR {
+            bits: u8,
+        }
+        impl Cc2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1neR {
+            bits: u8,
+        }
+        impl Cc1neR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3neW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3neW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2neW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2neW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1neW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1neW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&self) -> Cc4pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4pR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&self) -> Cc4eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4eR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&self) -> Cc3npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3npR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 3 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ne(&self) -> Cc3neR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3neR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&self) -> Cc3pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3pR { bits }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&self) -> Cc3eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3eR { bits }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&self) -> Cc2npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2npR { bits }
+            }
+            # [ doc = "Bit 6 - Capture/Compare 2 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ne(&self) -> Cc2neR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2neR { bits }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&self) -> Cc2pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2pR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&self) -> Cc2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2eR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 1 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ne(&self) -> Cc1neR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1neR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&mut self) -> _Cc4pW {
+                _Cc4pW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&mut self) -> _Cc4eW {
+                _Cc4eW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&mut self) -> _Cc3npW {
+                _Cc3npW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 3 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ne(&mut self) -> _Cc3neW {
+                _Cc3neW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&mut self) -> _Cc3pW {
+                _Cc3pW { w: self }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&mut self) -> _Cc3eW {
+                _Cc3eW { w: self }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&mut self) -> _Cc2npW {
+                _Cc2npW { w: self }
+            }
+            # [ doc = "Bit 6 - Capture/Compare 2 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ne(&mut self) -> _Cc2neW {
+                _Cc2neW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&mut self) -> _Cc2pW {
+                _Cc2pW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&mut self) -> _Cc2eW {
+                _Cc2eW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 1 complementary output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ne(&mut self) -> _Cc1neW {
+                _Cc1neW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntR {
+            bits: u16,
+        }
+        impl CntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&self) -> CntR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&mut self) -> _CntW {
+                _CntW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrR {
+            bits: u16,
+        }
+        impl ArrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&self) -> ArrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&mut self) -> _ArrW {
+                _ArrW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1R {
+            bits: u16,
+        }
+        impl Ccr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&self) -> Ccr1R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&mut self) -> _Ccr1W {
+                _Ccr1W { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub struct Ccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub mod ccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2R {
+            bits: u16,
+        }
+        impl Ccr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2(&self) -> Ccr2R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2(&mut self) -> _Ccr2W {
+                _Ccr2W { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub struct Ccr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub mod ccr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3R {
+            bits: u16,
+        }
+        impl Ccr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3(&self) -> Ccr3R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3(&mut self) -> _Ccr3W {
+                _Ccr3W { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub struct Ccr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub mod ccr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4R {
+            bits: u16,
+        }
+        impl Ccr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4(&self) -> Ccr4R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4(&mut self) -> _Ccr4W {
+                _Ccr4W { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA control register" ]
+    pub struct Dcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA control register" ]
+    pub mod dcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DblR {
+            bits: u8,
+        }
+        impl DblR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbaR {
+            bits: u8,
+        }
+        impl DbaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DblW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DblW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&self) -> DblR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DblR { bits }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&self) -> DbaR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&mut self) -> _DblW {
+                _DblW { w: self }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&mut self) -> _DbaW {
+                _DbaW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub struct Dmar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub mod dmar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmabR {
+            bits: u16,
+        }
+        impl DmabR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmabW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmabW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&self) -> DmabR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DmabR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&mut self) -> _DmabW {
+                _DmabW { w: self }
+            }
+        }
+    }
+    # [ doc = "repetition counter register" ]
+    pub struct Rcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "repetition counter register" ]
+    pub mod rcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Rcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RepR {
+            bits: u8,
+        }
+        impl RepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - Repetition counter value" ]
+            # [ inline ( always ) ]
+            pub fn rep(&self) -> RepR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RepR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - Repetition counter value" ]
+            # [ inline ( always ) ]
+            pub fn rep(&mut self) -> _RepW {
+                _RepW { w: self }
+            }
+        }
+    }
+    # [ doc = "break and dead-time register" ]
+    pub struct Bdtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "break and dead-time register" ]
+    pub mod bdtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Bdtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MoeR {
+            bits: u8,
+        }
+        impl MoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AoeR {
+            bits: u8,
+        }
+        impl AoeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkpR {
+            bits: u8,
+        }
+        impl BkpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BkeR {
+            bits: u8,
+        }
+        impl BkeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OssrR {
+            bits: u8,
+        }
+        impl OssrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OssiR {
+            bits: u8,
+        }
+        impl OssiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LockR {
+            bits: u8,
+        }
+        impl LockR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtgR {
+            bits: u8,
+        }
+        impl DtgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MoeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MoeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AoeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AoeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BkeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BkeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OssrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OssrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OssiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OssiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LockW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LockW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Main output enable" ]
+            # [ inline ( always ) ]
+            pub fn moe(&self) -> MoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MoeR { bits }
+            }
+            # [ doc = "Bit 14 - Automatic output enable" ]
+            # [ inline ( always ) ]
+            pub fn aoe(&self) -> AoeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AoeR { bits }
+            }
+            # [ doc = "Bit 13 - Break polarity" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&self) -> BkpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BkpR { bits }
+            }
+            # [ doc = "Bit 12 - Break enable" ]
+            # [ inline ( always ) ]
+            pub fn bke(&self) -> BkeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BkeR { bits }
+            }
+            # [ doc = "Bit 11 - Off-state selection for Run mode" ]
+            # [ inline ( always ) ]
+            pub fn ossr(&self) -> OssrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OssrR { bits }
+            }
+            # [ doc = "Bit 10 - Off-state selection for Idle mode" ]
+            # [ inline ( always ) ]
+            pub fn ossi(&self) -> OssiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OssiR { bits }
+            }
+            # [ doc = "Bits 8:9 - Lock configuration" ]
+            # [ inline ( always ) ]
+            pub fn lock(&self) -> LockR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LockR { bits }
+            }
+            # [ doc = "Bits 0:7 - Dead-time generator setup" ]
+            # [ inline ( always ) ]
+            pub fn dtg(&self) -> DtgR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtgR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Main output enable" ]
+            # [ inline ( always ) ]
+            pub fn moe(&mut self) -> _MoeW {
+                _MoeW { w: self }
+            }
+            # [ doc = "Bit 14 - Automatic output enable" ]
+            # [ inline ( always ) ]
+            pub fn aoe(&mut self) -> _AoeW {
+                _AoeW { w: self }
+            }
+            # [ doc = "Bit 13 - Break polarity" ]
+            # [ inline ( always ) ]
+            pub fn bkp(&mut self) -> _BkpW {
+                _BkpW { w: self }
+            }
+            # [ doc = "Bit 12 - Break enable" ]
+            # [ inline ( always ) ]
+            pub fn bke(&mut self) -> _BkeW {
+                _BkeW { w: self }
+            }
+            # [ doc = "Bit 11 - Off-state selection for Run mode" ]
+            # [ inline ( always ) ]
+            pub fn ossr(&mut self) -> _OssrW {
+                _OssrW { w: self }
+            }
+            # [ doc = "Bit 10 - Off-state selection for Idle mode" ]
+            # [ inline ( always ) ]
+            pub fn ossi(&mut self) -> _OssiW {
+                _OssiW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Lock configuration" ]
+            # [ inline ( always ) ]
+            pub fn lock(&mut self) -> _LockW {
+                _LockW { w: self }
+            }
+            # [ doc = "Bits 0:7 - Dead-time generator setup" ]
+            # [ inline ( always ) ]
+            pub fn dtg(&mut self) -> _DtgW {
+                _DtgW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Advanced-timers" ]
+pub struct Tim1 {
+    register_block: tim1::RegisterBlock,
+}
+impl Deref for Tim1 {
+    type Target = tim1::RegisterBlock;
+    fn deref(&self) -> &tim1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM8" ]
+pub const TIM8: Peripheral<Tim8> = unsafe { Peripheral::new(1073808384) };
+# [ doc = r" Register block" ]
+pub struct Tim8 {
+    register_block: tim1::RegisterBlock,
+}
+impl Deref for Tim8 {
+    type Target = tim1::RegisterBlock;
+    fn deref(&self) -> &tim1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General purpose timers" ]
+pub const TIM2: Peripheral<Tim2> = unsafe { Peripheral::new(1073741824) };
+# [ doc = "General purpose timers" ]
+pub mod tim2 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - slave mode control register" ]
+        pub smcr: Smcr,
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ]
+        pub ccmr2_output: Ccmr2Output,
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        # [ doc = "0x38 - capture/compare register 2" ]
+        pub ccr2: Ccr2,
+        # [ doc = "0x3c - capture/compare register 3" ]
+        pub ccr3: Ccr3,
+        # [ doc = "0x40 - capture/compare register 4" ]
+        pub ccr4: Ccr4,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x48 - DMA control register" ]
+        pub dcr: Dcr,
+        # [ doc = "0x4c - DMA address for full transfer" ]
+        pub dmar: Dmar,
+        # [ doc = "0x50 - TIM5 option register" ]
+        pub or: Or,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmsR {
+            bits: u8,
+        }
+        impl CmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&self) -> CmsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmsR { bits }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&mut self) -> _CmsW {
+                _CmsW { w: self }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ti1sR {
+            bits: u8,
+        }
+        impl Ti1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcdsR {
+            bits: u8,
+        }
+        impl CcdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ti1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ti1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&self) -> Ti1sR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ti1sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&self) -> CcdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcdsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&mut self) -> _Ti1sW {
+                _Ti1sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&mut self) -> _CcdsW {
+                _CcdsW { w: self }
+            }
+        }
+    }
+    # [ doc = "slave mode control register" ]
+    pub struct Smcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "slave mode control register" ]
+    pub mod smcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpR {
+            bits: u8,
+        }
+        impl EtpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EceR {
+            bits: u8,
+        }
+        impl EceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpsR {
+            bits: u8,
+        }
+        impl EtpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtfR {
+            bits: u8,
+        }
+        impl EtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsmR {
+            bits: u8,
+        }
+        impl MsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmsR {
+            bits: u8,
+        }
+        impl SmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&self) -> EtpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpR { bits }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&self) -> EceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EceR { bits }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&self) -> EtpsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpsR { bits }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&self) -> EtfR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtfR { bits }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&self) -> MsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsmR { bits }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&self) -> SmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&mut self) -> _EtpW {
+                _EtpW { w: self }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&mut self) -> _EceW {
+                _EceW { w: self }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&mut self) -> _EtpsW {
+                _EtpsW { w: self }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&mut self) -> _EtfW {
+                _EtfW { w: self }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&mut self) -> _MsmW {
+                _MsmW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&mut self) -> _SmsW {
+                _SmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TdeR {
+            bits: u8,
+        }
+        impl TdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4deR {
+            bits: u8,
+        }
+        impl Cc4deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3deR {
+            bits: u8,
+        }
+        impl Cc3deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2deR {
+            bits: u8,
+        }
+        impl Cc2deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1deR {
+            bits: u8,
+        }
+        impl Cc1deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdeR {
+            bits: u8,
+        }
+        impl UdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ieR {
+            bits: u8,
+        }
+        impl Cc4ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ieR {
+            bits: u8,
+        }
+        impl Cc3ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ieR {
+            bits: u8,
+        }
+        impl Cc2ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&self) -> TdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TdeR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&self) -> Cc4deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4deR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&self) -> Cc3deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3deR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&self) -> Cc2deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2deR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&self) -> Cc1deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1deR { bits }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&self) -> UdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdeR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&self) -> Cc4ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ieR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&self) -> Cc3ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ieR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&self) -> Cc2ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ieR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&mut self) -> _TdeW {
+                _TdeW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&mut self) -> _Cc4deW {
+                _Cc4deW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&mut self) -> _Cc3deW {
+                _Cc3deW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&mut self) -> _Cc2deW {
+                _Cc2deW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&mut self) -> _Cc1deW {
+                _Cc1deW { w: self }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&mut self) -> _UdeW {
+                _UdeW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&mut self) -> _Cc4ieW {
+                _Cc4ieW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&mut self) -> _Cc3ieW {
+                _Cc3ieW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&mut self) -> _Cc2ieW {
+                _Cc2ieW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ofR {
+            bits: u8,
+        }
+        impl Cc4ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ofR {
+            bits: u8,
+        }
+        impl Cc3ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ofR {
+            bits: u8,
+        }
+        impl Cc2ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifR {
+            bits: u8,
+        }
+        impl TifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ifR {
+            bits: u8,
+        }
+        impl Cc4ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ifR {
+            bits: u8,
+        }
+        impl Cc3ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ifR {
+            bits: u8,
+        }
+        impl Cc2ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&self) -> Cc4ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ofR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&self) -> Cc3ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ofR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&self) -> Cc2ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ofR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&self) -> TifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&self) -> Cc4ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ifR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&self) -> Cc3ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ifR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&self) -> Cc2ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ifR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&mut self) -> _Cc4ofW {
+                _Cc4ofW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&mut self) -> _Cc3ofW {
+                _Cc3ofW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&mut self) -> _Cc2ofW {
+                _Cc2ofW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&mut self) -> _TifW {
+                _TifW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&mut self) -> _Cc4ifW {
+                _Cc4ifW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&mut self) -> _Cc3ifW {
+                _Cc3ifW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&mut self) -> _Cc2ifW {
+                _Cc2ifW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Trigger generation" ]
+            # [ inline ( always ) ]
+            pub fn tg(&mut self) -> _TgW {
+                _TgW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/compare 4 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc4g(&mut self) -> _Cc4gW {
+                _Cc4gW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare 3 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc3g(&mut self) -> _Cc3gW {
+                _Cc3gW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare 2 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc2g(&mut self) -> _Cc2gW {
+                _Cc2gW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2ceR {
+            bits: u8,
+        }
+        impl Oc2ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2mR {
+            bits: u8,
+        }
+        impl Oc2mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2peR {
+            bits: u8,
+        }
+        impl Oc2peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2feR {
+            bits: u8,
+        }
+        impl Oc2feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1ceR {
+            bits: u8,
+        }
+        impl Oc1ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&self) -> Oc2ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&self) -> Oc2mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2mR { bits }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&self) -> Oc2peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2peR { bits }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&self) -> Oc2feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&self) -> Oc1ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&mut self) -> _Oc2ceW {
+                _Oc2ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&mut self) -> _Oc2mW {
+                _Oc2mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&mut self) -> _Oc2peW {
+                _Oc2peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&mut self) -> _Oc2feW {
+                _Oc2feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&mut self) -> _Oc1ceW {
+                _Oc1ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2fR {
+            bits: u8,
+        }
+        impl Ic2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2pcsR {
+            bits: u8,
+        }
+        impl Ic2pcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2pcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2pcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&self) -> Ic2fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&self) -> Ic2pcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2pcsR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&mut self) -> _Ic2fW {
+                _Ic2fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&mut self) -> _Ic2pcsW {
+                _Ic2pcsW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub struct Ccmr2Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub mod ccmr2_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct O24ceR {
+            bits: u8,
+        }
+        impl O24ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4mR {
+            bits: u8,
+        }
+        impl Oc4mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4peR {
+            bits: u8,
+        }
+        impl Oc4peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4feR {
+            bits: u8,
+        }
+        impl Oc4feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3ceR {
+            bits: u8,
+        }
+        impl Oc3ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3mR {
+            bits: u8,
+        }
+        impl Oc3mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3peR {
+            bits: u8,
+        }
+        impl Oc3peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3feR {
+            bits: u8,
+        }
+        impl Oc3feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _O24ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _O24ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&self) -> O24ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                O24ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&self) -> Oc4mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4mR { bits }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&self) -> Oc4peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4peR { bits }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&self) -> Oc4feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&self) -> Oc3ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&self) -> Oc3mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3mR { bits }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&self) -> Oc3peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3peR { bits }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&self) -> Oc3feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&mut self) -> _O24ceW {
+                _O24ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&mut self) -> _Oc4mW {
+                _Oc4mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&mut self) -> _Oc4peW {
+                _Oc4peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&mut self) -> _Oc4feW {
+                _Oc4feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&mut self) -> _Oc3ceW {
+                _Oc3ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&mut self) -> _Oc3mW {
+                _Oc3mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&mut self) -> _Oc3peW {
+                _Oc3peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&mut self) -> _Oc3feW {
+                _Oc3feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub struct Ccmr2Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub mod ccmr2_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4fR {
+            bits: u8,
+        }
+        impl Ic4fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4pscR {
+            bits: u8,
+        }
+        impl Ic4pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3fR {
+            bits: u8,
+        }
+        impl Ic3fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3pscR {
+            bits: u8,
+        }
+        impl Ic3pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&self) -> Ic4fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&self) -> Ic4pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4pscR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&self) -> Ic3fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&self) -> Ic3pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3pscR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&mut self) -> _Ic4fW {
+                _Ic4fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&mut self) -> _Ic4pscW {
+                _Ic4pscW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&mut self) -> _Ic3fW {
+                _Ic3fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&mut self) -> _Ic3pscW {
+                _Ic3pscW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4npR {
+            bits: u8,
+        }
+        impl Cc4npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4pR {
+            bits: u8,
+        }
+        impl Cc4pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4eR {
+            bits: u8,
+        }
+        impl Cc4eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3npR {
+            bits: u8,
+        }
+        impl Cc3npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3pR {
+            bits: u8,
+        }
+        impl Cc3pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3eR {
+            bits: u8,
+        }
+        impl Cc3eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2npR {
+            bits: u8,
+        }
+        impl Cc2npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2pR {
+            bits: u8,
+        }
+        impl Cc2pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2eR {
+            bits: u8,
+        }
+        impl Cc2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&self) -> Cc4npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4npR { bits }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&self) -> Cc4pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4pR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&self) -> Cc4eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4eR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&self) -> Cc3npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3npR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&self) -> Cc3pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3pR { bits }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&self) -> Cc3eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3eR { bits }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&self) -> Cc2npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2npR { bits }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&self) -> Cc2pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2pR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&self) -> Cc2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2eR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&mut self) -> _Cc4npW {
+                _Cc4npW { w: self }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&mut self) -> _Cc4pW {
+                _Cc4pW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&mut self) -> _Cc4eW {
+                _Cc4eW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&mut self) -> _Cc3npW {
+                _Cc3npW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&mut self) -> _Cc3pW {
+                _Cc3pW { w: self }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&mut self) -> _Cc3eW {
+                _Cc3eW { w: self }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&mut self) -> _Cc2npW {
+                _Cc2npW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&mut self) -> _Cc2pW {
+                _Cc2pW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&mut self) -> _Cc2eW {
+                _Cc2eW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntHR {
+            bits: u16,
+        }
+        impl CntHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntLR {
+            bits: u16,
+        }
+        impl CntLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&self) -> CntHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&self) -> CntLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&mut self) -> _CntHW {
+                _CntHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&mut self) -> _CntLW {
+                _CntLW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrHR {
+            bits: u16,
+        }
+        impl ArrHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrLR {
+            bits: u16,
+        }
+        impl ArrLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&self) -> ArrHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&self) -> ArrLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&mut self) -> _ArrHW {
+                _ArrHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&mut self) -> _ArrLW {
+                _ArrLW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1HR {
+            bits: u16,
+        }
+        impl Ccr1HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1LR {
+            bits: u16,
+        }
+        impl Ccr1LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&self) -> Ccr1HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&self) -> Ccr1LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&mut self) -> _Ccr1HW {
+                _Ccr1HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&mut self) -> _Ccr1LW {
+                _Ccr1LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub struct Ccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub mod ccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2HR {
+            bits: u16,
+        }
+        impl Ccr2HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2LR {
+            bits: u16,
+        }
+        impl Ccr2LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&self) -> Ccr2HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&self) -> Ccr2LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&mut self) -> _Ccr2HW {
+                _Ccr2HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&mut self) -> _Ccr2LW {
+                _Ccr2LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub struct Ccr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub mod ccr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3HR {
+            bits: u16,
+        }
+        impl Ccr3HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3LR {
+            bits: u16,
+        }
+        impl Ccr3LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&self) -> Ccr3HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&self) -> Ccr3LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&mut self) -> _Ccr3HW {
+                _Ccr3HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&mut self) -> _Ccr3LW {
+                _Ccr3LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub struct Ccr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub mod ccr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4HR {
+            bits: u16,
+        }
+        impl Ccr4HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4LR {
+            bits: u16,
+        }
+        impl Ccr4LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&self) -> Ccr4HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&self) -> Ccr4LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&mut self) -> _Ccr4HW {
+                _Ccr4HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&mut self) -> _Ccr4LW {
+                _Ccr4LW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA control register" ]
+    pub struct Dcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA control register" ]
+    pub mod dcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DblR {
+            bits: u8,
+        }
+        impl DblR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbaR {
+            bits: u8,
+        }
+        impl DbaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DblW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DblW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&self) -> DblR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DblR { bits }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&self) -> DbaR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&mut self) -> _DblW {
+                _DblW { w: self }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&mut self) -> _DbaW {
+                _DbaW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub struct Dmar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub mod dmar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmabR {
+            bits: u16,
+        }
+        impl DmabR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmabW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmabW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&self) -> DmabR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DmabR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&mut self) -> _DmabW {
+                _DmabW { w: self }
+            }
+        }
+    }
+    # [ doc = "TIM5 option register" ]
+    pub struct Or {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "TIM5 option register" ]
+    pub mod or {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Or {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Itr1RmpR {
+            bits: u8,
+        }
+        impl Itr1RmpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Itr1RmpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Itr1RmpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 10:11 - Timer Input 4 remap" ]
+            # [ inline ( always ) ]
+            pub fn itr1_rmp(&self) -> Itr1RmpR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Itr1RmpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 10:11 - Timer Input 4 remap" ]
+            # [ inline ( always ) ]
+            pub fn itr1_rmp(&mut self) -> _Itr1RmpW {
+                _Itr1RmpW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General purpose timers" ]
+pub struct Tim2 {
+    register_block: tim2::RegisterBlock,
+}
+impl Deref for Tim2 {
+    type Target = tim2::RegisterBlock;
+    fn deref(&self) -> &tim2::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General purpose timers" ]
+pub const TIM3: Peripheral<Tim3> = unsafe { Peripheral::new(1073742848) };
+# [ doc = "General purpose timers" ]
+pub mod tim3 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - slave mode control register" ]
+        pub smcr: Smcr,
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ]
+        pub ccmr2_output: Ccmr2Output,
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        # [ doc = "0x38 - capture/compare register 2" ]
+        pub ccr2: Ccr2,
+        # [ doc = "0x3c - capture/compare register 3" ]
+        pub ccr3: Ccr3,
+        # [ doc = "0x40 - capture/compare register 4" ]
+        pub ccr4: Ccr4,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x48 - DMA control register" ]
+        pub dcr: Dcr,
+        # [ doc = "0x4c - DMA address for full transfer" ]
+        pub dmar: Dmar,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmsR {
+            bits: u8,
+        }
+        impl CmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&self) -> CmsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmsR { bits }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&mut self) -> _CmsW {
+                _CmsW { w: self }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ti1sR {
+            bits: u8,
+        }
+        impl Ti1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcdsR {
+            bits: u8,
+        }
+        impl CcdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ti1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ti1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&self) -> Ti1sR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ti1sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&self) -> CcdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcdsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&mut self) -> _Ti1sW {
+                _Ti1sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&mut self) -> _CcdsW {
+                _CcdsW { w: self }
+            }
+        }
+    }
+    # [ doc = "slave mode control register" ]
+    pub struct Smcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "slave mode control register" ]
+    pub mod smcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpR {
+            bits: u8,
+        }
+        impl EtpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EceR {
+            bits: u8,
+        }
+        impl EceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpsR {
+            bits: u8,
+        }
+        impl EtpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtfR {
+            bits: u8,
+        }
+        impl EtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsmR {
+            bits: u8,
+        }
+        impl MsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmsR {
+            bits: u8,
+        }
+        impl SmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&self) -> EtpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpR { bits }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&self) -> EceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EceR { bits }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&self) -> EtpsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpsR { bits }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&self) -> EtfR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtfR { bits }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&self) -> MsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsmR { bits }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&self) -> SmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&mut self) -> _EtpW {
+                _EtpW { w: self }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&mut self) -> _EceW {
+                _EceW { w: self }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&mut self) -> _EtpsW {
+                _EtpsW { w: self }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&mut self) -> _EtfW {
+                _EtfW { w: self }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&mut self) -> _MsmW {
+                _MsmW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&mut self) -> _SmsW {
+                _SmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TdeR {
+            bits: u8,
+        }
+        impl TdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4deR {
+            bits: u8,
+        }
+        impl Cc4deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3deR {
+            bits: u8,
+        }
+        impl Cc3deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2deR {
+            bits: u8,
+        }
+        impl Cc2deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1deR {
+            bits: u8,
+        }
+        impl Cc1deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdeR {
+            bits: u8,
+        }
+        impl UdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ieR {
+            bits: u8,
+        }
+        impl Cc4ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ieR {
+            bits: u8,
+        }
+        impl Cc3ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ieR {
+            bits: u8,
+        }
+        impl Cc2ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&self) -> TdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TdeR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&self) -> Cc4deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4deR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&self) -> Cc3deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3deR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&self) -> Cc2deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2deR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&self) -> Cc1deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1deR { bits }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&self) -> UdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdeR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&self) -> Cc4ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ieR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&self) -> Cc3ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ieR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&self) -> Cc2ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ieR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&mut self) -> _TdeW {
+                _TdeW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&mut self) -> _Cc4deW {
+                _Cc4deW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&mut self) -> _Cc3deW {
+                _Cc3deW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&mut self) -> _Cc2deW {
+                _Cc2deW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&mut self) -> _Cc1deW {
+                _Cc1deW { w: self }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&mut self) -> _UdeW {
+                _UdeW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&mut self) -> _Cc4ieW {
+                _Cc4ieW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&mut self) -> _Cc3ieW {
+                _Cc3ieW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&mut self) -> _Cc2ieW {
+                _Cc2ieW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ofR {
+            bits: u8,
+        }
+        impl Cc4ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ofR {
+            bits: u8,
+        }
+        impl Cc3ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ofR {
+            bits: u8,
+        }
+        impl Cc2ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifR {
+            bits: u8,
+        }
+        impl TifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ifR {
+            bits: u8,
+        }
+        impl Cc4ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ifR {
+            bits: u8,
+        }
+        impl Cc3ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ifR {
+            bits: u8,
+        }
+        impl Cc2ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&self) -> Cc4ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ofR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&self) -> Cc3ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ofR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&self) -> Cc2ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ofR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&self) -> TifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&self) -> Cc4ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ifR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&self) -> Cc3ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ifR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&self) -> Cc2ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ifR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&mut self) -> _Cc4ofW {
+                _Cc4ofW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&mut self) -> _Cc3ofW {
+                _Cc3ofW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&mut self) -> _Cc2ofW {
+                _Cc2ofW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&mut self) -> _TifW {
+                _TifW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&mut self) -> _Cc4ifW {
+                _Cc4ifW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&mut self) -> _Cc3ifW {
+                _Cc3ifW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&mut self) -> _Cc2ifW {
+                _Cc2ifW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Trigger generation" ]
+            # [ inline ( always ) ]
+            pub fn tg(&mut self) -> _TgW {
+                _TgW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/compare 4 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc4g(&mut self) -> _Cc4gW {
+                _Cc4gW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare 3 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc3g(&mut self) -> _Cc3gW {
+                _Cc3gW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare 2 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc2g(&mut self) -> _Cc2gW {
+                _Cc2gW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2ceR {
+            bits: u8,
+        }
+        impl Oc2ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2mR {
+            bits: u8,
+        }
+        impl Oc2mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2peR {
+            bits: u8,
+        }
+        impl Oc2peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2feR {
+            bits: u8,
+        }
+        impl Oc2feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1ceR {
+            bits: u8,
+        }
+        impl Oc1ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&self) -> Oc2ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&self) -> Oc2mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2mR { bits }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&self) -> Oc2peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2peR { bits }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&self) -> Oc2feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&self) -> Oc1ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&mut self) -> _Oc2ceW {
+                _Oc2ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&mut self) -> _Oc2mW {
+                _Oc2mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&mut self) -> _Oc2peW {
+                _Oc2peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&mut self) -> _Oc2feW {
+                _Oc2feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&mut self) -> _Oc1ceW {
+                _Oc1ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2fR {
+            bits: u8,
+        }
+        impl Ic2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2pcsR {
+            bits: u8,
+        }
+        impl Ic2pcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2pcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2pcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&self) -> Ic2fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&self) -> Ic2pcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2pcsR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&mut self) -> _Ic2fW {
+                _Ic2fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&mut self) -> _Ic2pcsW {
+                _Ic2pcsW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub struct Ccmr2Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub mod ccmr2_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct O24ceR {
+            bits: u8,
+        }
+        impl O24ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4mR {
+            bits: u8,
+        }
+        impl Oc4mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4peR {
+            bits: u8,
+        }
+        impl Oc4peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4feR {
+            bits: u8,
+        }
+        impl Oc4feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3ceR {
+            bits: u8,
+        }
+        impl Oc3ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3mR {
+            bits: u8,
+        }
+        impl Oc3mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3peR {
+            bits: u8,
+        }
+        impl Oc3peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3feR {
+            bits: u8,
+        }
+        impl Oc3feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _O24ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _O24ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&self) -> O24ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                O24ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&self) -> Oc4mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4mR { bits }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&self) -> Oc4peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4peR { bits }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&self) -> Oc4feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&self) -> Oc3ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&self) -> Oc3mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3mR { bits }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&self) -> Oc3peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3peR { bits }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&self) -> Oc3feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&mut self) -> _O24ceW {
+                _O24ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&mut self) -> _Oc4mW {
+                _Oc4mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&mut self) -> _Oc4peW {
+                _Oc4peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&mut self) -> _Oc4feW {
+                _Oc4feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&mut self) -> _Oc3ceW {
+                _Oc3ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&mut self) -> _Oc3mW {
+                _Oc3mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&mut self) -> _Oc3peW {
+                _Oc3peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&mut self) -> _Oc3feW {
+                _Oc3feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub struct Ccmr2Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub mod ccmr2_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4fR {
+            bits: u8,
+        }
+        impl Ic4fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4pscR {
+            bits: u8,
+        }
+        impl Ic4pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3fR {
+            bits: u8,
+        }
+        impl Ic3fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3pscR {
+            bits: u8,
+        }
+        impl Ic3pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&self) -> Ic4fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&self) -> Ic4pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4pscR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&self) -> Ic3fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&self) -> Ic3pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3pscR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&mut self) -> _Ic4fW {
+                _Ic4fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&mut self) -> _Ic4pscW {
+                _Ic4pscW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&mut self) -> _Ic3fW {
+                _Ic3fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&mut self) -> _Ic3pscW {
+                _Ic3pscW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4npR {
+            bits: u8,
+        }
+        impl Cc4npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4pR {
+            bits: u8,
+        }
+        impl Cc4pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4eR {
+            bits: u8,
+        }
+        impl Cc4eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3npR {
+            bits: u8,
+        }
+        impl Cc3npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3pR {
+            bits: u8,
+        }
+        impl Cc3pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3eR {
+            bits: u8,
+        }
+        impl Cc3eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2npR {
+            bits: u8,
+        }
+        impl Cc2npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2pR {
+            bits: u8,
+        }
+        impl Cc2pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2eR {
+            bits: u8,
+        }
+        impl Cc2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&self) -> Cc4npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4npR { bits }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&self) -> Cc4pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4pR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&self) -> Cc4eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4eR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&self) -> Cc3npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3npR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&self) -> Cc3pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3pR { bits }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&self) -> Cc3eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3eR { bits }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&self) -> Cc2npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2npR { bits }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&self) -> Cc2pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2pR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&self) -> Cc2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2eR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&mut self) -> _Cc4npW {
+                _Cc4npW { w: self }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&mut self) -> _Cc4pW {
+                _Cc4pW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&mut self) -> _Cc4eW {
+                _Cc4eW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&mut self) -> _Cc3npW {
+                _Cc3npW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&mut self) -> _Cc3pW {
+                _Cc3pW { w: self }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&mut self) -> _Cc3eW {
+                _Cc3eW { w: self }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&mut self) -> _Cc2npW {
+                _Cc2npW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&mut self) -> _Cc2pW {
+                _Cc2pW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&mut self) -> _Cc2eW {
+                _Cc2eW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntHR {
+            bits: u16,
+        }
+        impl CntHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntLR {
+            bits: u16,
+        }
+        impl CntLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&self) -> CntHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&self) -> CntLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&mut self) -> _CntHW {
+                _CntHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&mut self) -> _CntLW {
+                _CntLW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrHR {
+            bits: u16,
+        }
+        impl ArrHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrLR {
+            bits: u16,
+        }
+        impl ArrLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&self) -> ArrHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&self) -> ArrLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&mut self) -> _ArrHW {
+                _ArrHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&mut self) -> _ArrLW {
+                _ArrLW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1HR {
+            bits: u16,
+        }
+        impl Ccr1HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1LR {
+            bits: u16,
+        }
+        impl Ccr1LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&self) -> Ccr1HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&self) -> Ccr1LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&mut self) -> _Ccr1HW {
+                _Ccr1HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&mut self) -> _Ccr1LW {
+                _Ccr1LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub struct Ccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub mod ccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2HR {
+            bits: u16,
+        }
+        impl Ccr2HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2LR {
+            bits: u16,
+        }
+        impl Ccr2LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&self) -> Ccr2HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&self) -> Ccr2LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&mut self) -> _Ccr2HW {
+                _Ccr2HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&mut self) -> _Ccr2LW {
+                _Ccr2LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub struct Ccr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub mod ccr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3HR {
+            bits: u16,
+        }
+        impl Ccr3HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3LR {
+            bits: u16,
+        }
+        impl Ccr3LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&self) -> Ccr3HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&self) -> Ccr3LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&mut self) -> _Ccr3HW {
+                _Ccr3HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&mut self) -> _Ccr3LW {
+                _Ccr3LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub struct Ccr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub mod ccr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4HR {
+            bits: u16,
+        }
+        impl Ccr4HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4LR {
+            bits: u16,
+        }
+        impl Ccr4LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&self) -> Ccr4HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&self) -> Ccr4LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&mut self) -> _Ccr4HW {
+                _Ccr4HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&mut self) -> _Ccr4LW {
+                _Ccr4LW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA control register" ]
+    pub struct Dcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA control register" ]
+    pub mod dcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DblR {
+            bits: u8,
+        }
+        impl DblR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbaR {
+            bits: u8,
+        }
+        impl DbaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DblW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DblW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&self) -> DblR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DblR { bits }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&self) -> DbaR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&mut self) -> _DblW {
+                _DblW { w: self }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&mut self) -> _DbaW {
+                _DbaW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub struct Dmar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub mod dmar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmabR {
+            bits: u16,
+        }
+        impl DmabR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmabW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmabW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&self) -> DmabR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DmabR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&mut self) -> _DmabW {
+                _DmabW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General purpose timers" ]
+pub struct Tim3 {
+    register_block: tim3::RegisterBlock,
+}
+impl Deref for Tim3 {
+    type Target = tim3::RegisterBlock;
+    fn deref(&self) -> &tim3::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM4" ]
+pub const TIM4: Peripheral<Tim4> = unsafe { Peripheral::new(1073743872) };
+# [ doc = r" Register block" ]
+pub struct Tim4 {
+    register_block: tim3::RegisterBlock,
+}
+impl Deref for Tim4 {
+    type Target = tim3::RegisterBlock;
+    fn deref(&self) -> &tim3::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub const TIM5: Peripheral<Tim5> = unsafe { Peripheral::new(1073744896) };
+# [ doc = "General-purpose-timers" ]
+pub mod tim5 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - slave mode control register" ]
+        pub smcr: Smcr,
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        # [ doc = "0x1c - capture/compare mode register 2 (output mode)" ]
+        pub ccmr2_output: Ccmr2Output,
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        # [ doc = "0x38 - capture/compare register 2" ]
+        pub ccr2: Ccr2,
+        # [ doc = "0x3c - capture/compare register 3" ]
+        pub ccr3: Ccr3,
+        # [ doc = "0x40 - capture/compare register 4" ]
+        pub ccr4: Ccr4,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x48 - DMA control register" ]
+        pub dcr: Dcr,
+        # [ doc = "0x4c - DMA address for full transfer" ]
+        pub dmar: Dmar,
+        # [ doc = "0x50 - TIM5 option register" ]
+        pub or: Or,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmsR {
+            bits: u8,
+        }
+        impl CmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DirR {
+            bits: u8,
+        }
+        impl DirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&self) -> CmsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmsR { bits }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&self) -> DirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DirR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bits 5:6 - Center-aligned mode selection" ]
+            # [ inline ( always ) ]
+            pub fn cms(&mut self) -> _CmsW {
+                _CmsW { w: self }
+            }
+            # [ doc = "Bit 4 - Direction" ]
+            # [ inline ( always ) ]
+            pub fn dir(&mut self) -> _DirW {
+                _DirW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ti1sR {
+            bits: u8,
+        }
+        impl Ti1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CcdsR {
+            bits: u8,
+        }
+        impl CcdsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ti1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ti1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CcdsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CcdsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&self) -> Ti1sR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ti1sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&self) -> CcdsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CcdsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - TI1 selection" ]
+            # [ inline ( always ) ]
+            pub fn ti1s(&mut self) -> _Ti1sW {
+                _Ti1sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare DMA selection" ]
+            # [ inline ( always ) ]
+            pub fn ccds(&mut self) -> _CcdsW {
+                _CcdsW { w: self }
+            }
+        }
+    }
+    # [ doc = "slave mode control register" ]
+    pub struct Smcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "slave mode control register" ]
+    pub mod smcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpR {
+            bits: u8,
+        }
+        impl EtpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EceR {
+            bits: u8,
+        }
+        impl EceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtpsR {
+            bits: u8,
+        }
+        impl EtpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtfR {
+            bits: u8,
+        }
+        impl EtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsmR {
+            bits: u8,
+        }
+        impl MsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmsR {
+            bits: u8,
+        }
+        impl SmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&self) -> EtpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpR { bits }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&self) -> EceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EceR { bits }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&self) -> EtpsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtpsR { bits }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&self) -> EtfR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtfR { bits }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&self) -> MsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsmR { bits }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&self) -> SmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - External trigger polarity" ]
+            # [ inline ( always ) ]
+            pub fn etp(&mut self) -> _EtpW {
+                _EtpW { w: self }
+            }
+            # [ doc = "Bit 14 - External clock enable" ]
+            # [ inline ( always ) ]
+            pub fn ece(&mut self) -> _EceW {
+                _EceW { w: self }
+            }
+            # [ doc = "Bits 12:13 - External trigger prescaler" ]
+            # [ inline ( always ) ]
+            pub fn etps(&mut self) -> _EtpsW {
+                _EtpsW { w: self }
+            }
+            # [ doc = "Bits 8:11 - External trigger filter" ]
+            # [ inline ( always ) ]
+            pub fn etf(&mut self) -> _EtfW {
+                _EtfW { w: self }
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&mut self) -> _MsmW {
+                _MsmW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&mut self) -> _SmsW {
+                _SmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TdeR {
+            bits: u8,
+        }
+        impl TdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4deR {
+            bits: u8,
+        }
+        impl Cc4deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3deR {
+            bits: u8,
+        }
+        impl Cc3deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2deR {
+            bits: u8,
+        }
+        impl Cc2deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1deR {
+            bits: u8,
+        }
+        impl Cc1deR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdeR {
+            bits: u8,
+        }
+        impl UdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ieR {
+            bits: u8,
+        }
+        impl Cc4ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ieR {
+            bits: u8,
+        }
+        impl Cc3ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ieR {
+            bits: u8,
+        }
+        impl Cc2ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1deW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1deW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&self) -> TdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TdeR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&self) -> Cc4deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4deR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&self) -> Cc3deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3deR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&self) -> Cc2deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2deR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&self) -> Cc1deR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1deR { bits }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&self) -> UdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdeR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&self) -> Cc4ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ieR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&self) -> Cc3ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ieR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&self) -> Cc2ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ieR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - Trigger DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn tde(&mut self) -> _TdeW {
+                _TdeW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4de(&mut self) -> _Cc4deW {
+                _Cc4deW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3de(&mut self) -> _Cc3deW {
+                _Cc3deW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/Compare 2 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2de(&mut self) -> _Cc2deW {
+                _Cc2deW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1de(&mut self) -> _Cc1deW {
+                _Cc1deW { w: self }
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&mut self) -> _UdeW {
+                _UdeW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4ie(&mut self) -> _Cc4ieW {
+                _Cc4ieW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3ie(&mut self) -> _Cc3ieW {
+                _Cc3ieW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&mut self) -> _Cc2ieW {
+                _Cc2ieW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ofR {
+            bits: u8,
+        }
+        impl Cc4ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ofR {
+            bits: u8,
+        }
+        impl Cc3ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ofR {
+            bits: u8,
+        }
+        impl Cc2ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifR {
+            bits: u8,
+        }
+        impl TifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4ifR {
+            bits: u8,
+        }
+        impl Cc4ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3ifR {
+            bits: u8,
+        }
+        impl Cc3ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ifR {
+            bits: u8,
+        }
+        impl Cc2ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&self) -> Cc4ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ofR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&self) -> Cc3ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ofR { bits }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&self) -> Cc2ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ofR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&self) -> TifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&self) -> Cc4ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4ifR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&self) -> Cc3ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3ifR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&self) -> Cc2ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ifR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4of(&mut self) -> _Cc4ofW {
+                _Cc4ofW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3of(&mut self) -> _Cc3ofW {
+                _Cc3ofW { w: self }
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&mut self) -> _Cc2ofW {
+                _Cc2ofW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&mut self) -> _TifW {
+                _TifW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 4 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc4if(&mut self) -> _Cc4ifW {
+                _Cc4ifW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 3 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc3if(&mut self) -> _Cc3ifW {
+                _Cc3ifW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&mut self) -> _Cc2ifW {
+                _Cc2ifW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Trigger generation" ]
+            # [ inline ( always ) ]
+            pub fn tg(&mut self) -> _TgW {
+                _TgW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/compare 4 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc4g(&mut self) -> _Cc4gW {
+                _Cc4gW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/compare 3 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc3g(&mut self) -> _Cc3gW {
+                _Cc3gW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare 2 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc2g(&mut self) -> _Cc2gW {
+                _Cc2gW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2ceR {
+            bits: u8,
+        }
+        impl Oc2ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2mR {
+            bits: u8,
+        }
+        impl Oc2mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2peR {
+            bits: u8,
+        }
+        impl Oc2peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2feR {
+            bits: u8,
+        }
+        impl Oc2feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1ceR {
+            bits: u8,
+        }
+        impl Oc1ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&self) -> Oc2ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&self) -> Oc2mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2mR { bits }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&self) -> Oc2peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2peR { bits }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&self) -> Oc2feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&self) -> Oc1ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - OC2CE" ]
+            # [ inline ( always ) ]
+            pub fn oc2ce(&mut self) -> _Oc2ceW {
+                _Oc2ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC2M" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&mut self) -> _Oc2mW {
+                _Oc2mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC2PE" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&mut self) -> _Oc2peW {
+                _Oc2peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC2FE" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&mut self) -> _Oc2feW {
+                _Oc2feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC2S" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC1CE" ]
+            # [ inline ( always ) ]
+            pub fn oc1ce(&mut self) -> _Oc1ceW {
+                _Oc1ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC1M" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC1PE" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC1FE" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC1S" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2fR {
+            bits: u8,
+        }
+        impl Ic2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2pcsR {
+            bits: u8,
+        }
+        impl Ic2pcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2pcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2pcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&self) -> Ic2fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&self) -> Ic2pcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2pcsR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&mut self) -> _Ic2fW {
+                _Ic2fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&mut self) -> _Ic2pcsW {
+                _Ic2pcsW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub struct Ccmr2Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (output mode)" ]
+    pub mod ccmr2_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct O24ceR {
+            bits: u8,
+        }
+        impl O24ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4mR {
+            bits: u8,
+        }
+        impl Oc4mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4peR {
+            bits: u8,
+        }
+        impl Oc4peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc4feR {
+            bits: u8,
+        }
+        impl Oc4feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3ceR {
+            bits: u8,
+        }
+        impl Oc3ceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3mR {
+            bits: u8,
+        }
+        impl Oc3mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3peR {
+            bits: u8,
+        }
+        impl Oc3peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc3feR {
+            bits: u8,
+        }
+        impl Oc3feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _O24ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _O24ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc4feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc4feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3ceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3ceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc3feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc3feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&self) -> O24ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                O24ceR { bits }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&self) -> Oc4mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4mR { bits }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&self) -> Oc4peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4peR { bits }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&self) -> Oc4feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc4feR { bits }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&self) -> Oc3ceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3ceR { bits }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&self) -> Oc3mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3mR { bits }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&self) -> Oc3peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3peR { bits }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&self) -> Oc3feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc3feR { bits }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - O24CE" ]
+            # [ inline ( always ) ]
+            pub fn o24ce(&mut self) -> _O24ceW {
+                _O24ceW { w: self }
+            }
+            # [ doc = "Bits 12:14 - OC4M" ]
+            # [ inline ( always ) ]
+            pub fn oc4m(&mut self) -> _Oc4mW {
+                _Oc4mW { w: self }
+            }
+            # [ doc = "Bit 11 - OC4PE" ]
+            # [ inline ( always ) ]
+            pub fn oc4pe(&mut self) -> _Oc4peW {
+                _Oc4peW { w: self }
+            }
+            # [ doc = "Bit 10 - OC4FE" ]
+            # [ inline ( always ) ]
+            pub fn oc4fe(&mut self) -> _Oc4feW {
+                _Oc4feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - CC4S" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bit 7 - OC3CE" ]
+            # [ inline ( always ) ]
+            pub fn oc3ce(&mut self) -> _Oc3ceW {
+                _Oc3ceW { w: self }
+            }
+            # [ doc = "Bits 4:6 - OC3M" ]
+            # [ inline ( always ) ]
+            pub fn oc3m(&mut self) -> _Oc3mW {
+                _Oc3mW { w: self }
+            }
+            # [ doc = "Bit 3 - OC3PE" ]
+            # [ inline ( always ) ]
+            pub fn oc3pe(&mut self) -> _Oc3peW {
+                _Oc3peW { w: self }
+            }
+            # [ doc = "Bit 2 - OC3FE" ]
+            # [ inline ( always ) ]
+            pub fn oc3fe(&mut self) -> _Oc3feW {
+                _Oc3feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - CC3S" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub struct Ccmr2Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 2 (input mode)" ]
+    pub mod ccmr2_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr2Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4fR {
+            bits: u8,
+        }
+        impl Ic4fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic4pscR {
+            bits: u8,
+        }
+        impl Ic4pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4sR {
+            bits: u8,
+        }
+        impl Cc4sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3fR {
+            bits: u8,
+        }
+        impl Ic3fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic3pscR {
+            bits: u8,
+        }
+        impl Ic3pscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3sR {
+            bits: u8,
+        }
+        impl Cc3sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic4pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic4pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic3pscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic3pscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&self) -> Ic4fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&self) -> Ic4pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic4pscR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&self) -> Cc4sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4sR { bits }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&self) -> Ic3fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&self) -> Ic3pscR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic3pscR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&self) -> Cc3sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:15 - Input capture 4 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic4f(&mut self) -> _Ic4fW {
+                _Ic4fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 4 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic4psc(&mut self) -> _Ic4pscW {
+                _Ic4pscW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 4 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc4s(&mut self) -> _Cc4sW {
+                _Cc4sW { w: self }
+            }
+            # [ doc = "Bits 4:7 - Input capture 3 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic3f(&mut self) -> _Ic3fW {
+                _Ic3fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 3 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic3psc(&mut self) -> _Ic3pscW {
+                _Ic3pscW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/compare 3 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc3s(&mut self) -> _Cc3sW {
+                _Cc3sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4npR {
+            bits: u8,
+        }
+        impl Cc4npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4pR {
+            bits: u8,
+        }
+        impl Cc4pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc4eR {
+            bits: u8,
+        }
+        impl Cc4eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3npR {
+            bits: u8,
+        }
+        impl Cc3npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3pR {
+            bits: u8,
+        }
+        impl Cc3pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc3eR {
+            bits: u8,
+        }
+        impl Cc3eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2npR {
+            bits: u8,
+        }
+        impl Cc2npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2pR {
+            bits: u8,
+        }
+        impl Cc2pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2eR {
+            bits: u8,
+        }
+        impl Cc2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc4eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc4eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc3eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc3eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&self) -> Cc4npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4npR { bits }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&self) -> Cc4pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4pR { bits }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&self) -> Cc4eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc4eR { bits }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&self) -> Cc3npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3npR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&self) -> Cc3pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3pR { bits }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&self) -> Cc3eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc3eR { bits }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&self) -> Cc2npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2npR { bits }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&self) -> Cc2pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2pR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&self) -> Cc2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2eR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 15 - Capture/Compare 4 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4np(&mut self) -> _Cc4npW {
+                _Cc4npW { w: self }
+            }
+            # [ doc = "Bit 13 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc4p(&mut self) -> _Cc4pW {
+                _Cc4pW { w: self }
+            }
+            # [ doc = "Bit 12 - Capture/Compare 4 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc4e(&mut self) -> _Cc4eW {
+                _Cc4eW { w: self }
+            }
+            # [ doc = "Bit 11 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3np(&mut self) -> _Cc3npW {
+                _Cc3npW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 3 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc3p(&mut self) -> _Cc3pW {
+                _Cc3pW { w: self }
+            }
+            # [ doc = "Bit 8 - Capture/Compare 3 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc3e(&mut self) -> _Cc3eW {
+                _Cc3eW { w: self }
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&mut self) -> _Cc2npW {
+                _Cc2npW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&mut self) -> _Cc2pW {
+                _Cc2pW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&mut self) -> _Cc2eW {
+                _Cc2eW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntHR {
+            bits: u16,
+        }
+        impl CntHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntLR {
+            bits: u16,
+        }
+        impl CntLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&self) -> CntHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&self) -> CntLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_h(&mut self) -> _CntHW {
+                _CntHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt_l(&mut self) -> _CntLW {
+                _CntLW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrHR {
+            bits: u16,
+        }
+        impl ArrHR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrLR {
+            bits: u16,
+        }
+        impl ArrLR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrHW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrHW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrLW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrLW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&self) -> ArrHR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrHR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&self) -> ArrLR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrLR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_h(&mut self) -> _ArrHW {
+                _ArrHW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr_l(&mut self) -> _ArrLW {
+                _ArrLW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1HR {
+            bits: u16,
+        }
+        impl Ccr1HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1LR {
+            bits: u16,
+        }
+        impl Ccr1LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&self) -> Ccr1HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&self) -> Ccr1LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_h(&mut self) -> _Ccr1HW {
+                _Ccr1HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1_l(&mut self) -> _Ccr1LW {
+                _Ccr1LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub struct Ccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub mod ccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2HR {
+            bits: u16,
+        }
+        impl Ccr2HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2LR {
+            bits: u16,
+        }
+        impl Ccr2LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&self) -> Ccr2HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&self) -> Ccr2LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_h(&mut self) -> _Ccr2HW {
+                _Ccr2HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2_l(&mut self) -> _Ccr2LW {
+                _Ccr2LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub struct Ccr3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 3" ]
+    pub mod ccr3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3HR {
+            bits: u16,
+        }
+        impl Ccr3HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr3LR {
+            bits: u16,
+        }
+        impl Ccr3LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr3LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr3LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&self) -> Ccr3HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&self) -> Ccr3LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr3LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_h(&mut self) -> _Ccr3HW {
+                _Ccr3HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr3_l(&mut self) -> _Ccr3LW {
+                _Ccr3LW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub struct Ccr4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 4" ]
+    pub mod ccr4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4HR {
+            bits: u16,
+        }
+        impl Ccr4HR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr4LR {
+            bits: u16,
+        }
+        impl Ccr4LR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4HW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4HW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr4LW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr4LW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&self) -> Ccr4HR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4HR { bits }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&self) -> Ccr4LR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr4LR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - High Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_h(&mut self) -> _Ccr4HW {
+                _Ccr4HW { w: self }
+            }
+            # [ doc = "Bits 0:15 - Low Capture/Compare value" ]
+            # [ inline ( always ) ]
+            pub fn ccr4_l(&mut self) -> _Ccr4LW {
+                _Ccr4LW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA control register" ]
+    pub struct Dcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA control register" ]
+    pub mod dcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DblR {
+            bits: u8,
+        }
+        impl DblR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbaR {
+            bits: u8,
+        }
+        impl DbaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DblW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DblW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&self) -> DblR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DblR { bits }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&self) -> DbaR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:12 - DMA burst length" ]
+            # [ inline ( always ) ]
+            pub fn dbl(&mut self) -> _DblW {
+                _DblW { w: self }
+            }
+            # [ doc = "Bits 0:4 - DMA base address" ]
+            # [ inline ( always ) ]
+            pub fn dba(&mut self) -> _DbaW {
+                _DbaW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub struct Dmar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA address for full transfer" ]
+    pub mod dmar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmabR {
+            bits: u16,
+        }
+        impl DmabR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmabW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmabW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&self) -> DmabR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DmabR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - DMA register for burst accesses" ]
+            # [ inline ( always ) ]
+            pub fn dmab(&mut self) -> _DmabW {
+                _DmabW { w: self }
+            }
+        }
+    }
+    # [ doc = "TIM5 option register" ]
+    pub struct Or {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "TIM5 option register" ]
+    pub mod or {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Or {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct It4RmpR {
+            bits: u8,
+        }
+        impl It4RmpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _It4RmpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _It4RmpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 6:7 - Timer Input 4 remap" ]
+            # [ inline ( always ) ]
+            pub fn it4_rmp(&self) -> It4RmpR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                It4RmpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 6:7 - Timer Input 4 remap" ]
+            # [ inline ( always ) ]
+            pub fn it4_rmp(&mut self) -> _It4RmpW {
+                _It4RmpW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub struct Tim5 {
+    register_block: tim5::RegisterBlock,
+}
+impl Deref for Tim5 {
+    type Target = tim5::RegisterBlock;
+    fn deref(&self) -> &tim5::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General purpose timers" ]
+pub const TIM9: Peripheral<Tim9> = unsafe { Peripheral::new(1073823744) };
+# [ doc = "General purpose timers" ]
+pub mod tim9 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        # [ doc = "0x08 - slave mode control register" ]
+        pub smcr: Smcr,
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        # [ doc = "0x38 - capture/compare register 2" ]
+        pub ccr2: Ccr2,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "slave mode control register" ]
+    pub struct Smcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "slave mode control register" ]
+    pub mod smcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Smcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MsmR {
+            bits: u8,
+        }
+        impl MsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SmsR {
+            bits: u8,
+        }
+        impl SmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&self) -> MsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MsmR { bits }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&self) -> SmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Master/Slave mode" ]
+            # [ inline ( always ) ]
+            pub fn msm(&mut self) -> _MsmW {
+                _MsmW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Trigger selection" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bits 0:2 - Slave mode selection" ]
+            # [ inline ( always ) ]
+            pub fn sms(&mut self) -> _SmsW {
+                _SmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ieR {
+            bits: u8,
+        }
+        impl Cc2ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&self) -> Cc2ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ieR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Trigger interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2ie(&mut self) -> _Cc2ieW {
+                _Cc2ieW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ofR {
+            bits: u8,
+        }
+        impl Cc2ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TifR {
+            bits: u8,
+        }
+        impl TifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2ifR {
+            bits: u8,
+        }
+        impl Cc2ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&self) -> Cc2ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ofR { bits }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&self) -> TifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TifR { bits }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&self) -> Cc2ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2ifR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 10 - Capture/compare 2 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2of(&mut self) -> _Cc2ofW {
+                _Cc2ofW { w: self }
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 6 - Trigger interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn tif(&mut self) -> _TifW {
+                _TifW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/Compare 2 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc2if(&mut self) -> _Cc2ifW {
+                _Cc2ifW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - Trigger generation" ]
+            # [ inline ( always ) ]
+            pub fn tg(&mut self) -> _TgW {
+                _TgW { w: self }
+            }
+            # [ doc = "Bit 2 - Capture/compare 2 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc2g(&mut self) -> _Cc2gW {
+                _Cc2gW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2mR {
+            bits: u8,
+        }
+        impl Oc2mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2peR {
+            bits: u8,
+        }
+        impl Oc2peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc2feR {
+            bits: u8,
+        }
+        impl Oc2feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc2feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc2feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:14 - Output Compare 2 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&self) -> Oc2mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2mR { bits }
+            }
+            # [ doc = "Bit 11 - Output Compare 2 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&self) -> Oc2peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2peR { bits }
+            }
+            # [ doc = "Bit 10 - Output Compare 2 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&self) -> Oc2feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc2feR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:14 - Output Compare 2 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc2m(&mut self) -> _Oc2mW {
+                _Oc2mW { w: self }
+            }
+            # [ doc = "Bit 11 - Output Compare 2 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2pe(&mut self) -> _Oc2peW {
+                _Oc2peW { w: self }
+            }
+            # [ doc = "Bit 10 - Output Compare 2 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc2fe(&mut self) -> _Oc2feW {
+                _Oc2feW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2fR {
+            bits: u8,
+        }
+        impl Ic2fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic2pcsR {
+            bits: u8,
+        }
+        impl Ic2pcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2sR {
+            bits: u8,
+        }
+        impl Cc2sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic2pcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic2pcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 12:14 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&self) -> Ic2fR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2fR { bits }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&self) -> Ic2pcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic2pcsR { bits }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&self) -> Cc2sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2sR { bits }
+            }
+            # [ doc = "Bits 4:6 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 12:14 - Input capture 2 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic2f(&mut self) -> _Ic2fW {
+                _Ic2fW { w: self }
+            }
+            # [ doc = "Bits 10:11 - Input capture 2 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn ic2pcs(&mut self) -> _Ic2pcsW {
+                _Ic2pcsW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Capture/Compare 2 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc2s(&mut self) -> _Cc2sW {
+                _Cc2sW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2npR {
+            bits: u8,
+        }
+        impl Cc2npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2pR {
+            bits: u8,
+        }
+        impl Cc2pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc2eR {
+            bits: u8,
+        }
+        impl Cc2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&self) -> Cc2npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2npR { bits }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&self) -> Cc2pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2pR { bits }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&self) -> Cc2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc2eR { bits }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2np(&mut self) -> _Cc2npW {
+                _Cc2npW { w: self }
+            }
+            # [ doc = "Bit 5 - Capture/Compare 2 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc2p(&mut self) -> _Cc2pW {
+                _Cc2pW { w: self }
+            }
+            # [ doc = "Bit 4 - Capture/Compare 2 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc2e(&mut self) -> _Cc2eW {
+                _Cc2eW { w: self }
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntR {
+            bits: u16,
+        }
+        impl CntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&self) -> CntR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&mut self) -> _CntW {
+                _CntW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrR {
+            bits: u16,
+        }
+        impl ArrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&self) -> ArrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&mut self) -> _ArrW {
+                _ArrW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1R {
+            bits: u16,
+        }
+        impl Ccr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&self) -> Ccr1R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&mut self) -> _Ccr1W {
+                _Ccr1W { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub struct Ccr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 2" ]
+    pub mod ccr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr2R {
+            bits: u16,
+        }
+        impl Ccr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2(&self) -> Ccr2R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr2R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 2 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr2(&mut self) -> _Ccr2W {
+                _Ccr2W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General purpose timers" ]
+pub struct Tim9 {
+    register_block: tim9::RegisterBlock,
+}
+impl Deref for Tim9 {
+    type Target = tim9::RegisterBlock;
+    fn deref(&self) -> &tim9::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM12" ]
+pub const TIM12: Peripheral<Tim12> = unsafe { Peripheral::new(1073747968) };
+# [ doc = r" Register block" ]
+pub struct Tim12 {
+    register_block: tim9::RegisterBlock,
+}
+impl Deref for Tim12 {
+    type Target = tim9::RegisterBlock;
+    fn deref(&self) -> &tim9::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub const TIM10: Peripheral<Tim10> = unsafe { Peripheral::new(1073824768) };
+# [ doc = "General-purpose-timers" ]
+pub mod tim10 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        _reserved0: [u8; 8usize],
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved2: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntR {
+            bits: u16,
+        }
+        impl CntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&self) -> CntR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&mut self) -> _CntW {
+                _CntW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrR {
+            bits: u16,
+        }
+        impl ArrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&self) -> ArrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&mut self) -> _ArrW {
+                _ArrW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1R {
+            bits: u16,
+        }
+        impl Ccr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&self) -> Ccr1R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&mut self) -> _Ccr1W {
+                _Ccr1W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub struct Tim10 {
+    register_block: tim10::RegisterBlock,
+}
+impl Deref for Tim10 {
+    type Target = tim10::RegisterBlock;
+    fn deref(&self) -> &tim10::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM13" ]
+pub const TIM13: Peripheral<Tim13> = unsafe { Peripheral::new(1073748992) };
+# [ doc = r" Register block" ]
+pub struct Tim13 {
+    register_block: tim10::RegisterBlock,
+}
+impl Deref for Tim13 {
+    type Target = tim10::RegisterBlock;
+    fn deref(&self) -> &tim10::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM14" ]
+pub const TIM14: Peripheral<Tim14> = unsafe { Peripheral::new(1073750016) };
+# [ doc = r" Register block" ]
+pub struct Tim14 {
+    register_block: tim10::RegisterBlock,
+}
+impl Deref for Tim14 {
+    type Target = tim10::RegisterBlock;
+    fn deref(&self) -> &tim10::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub const TIM11: Peripheral<Tim11> = unsafe { Peripheral::new(1073825792) };
+# [ doc = "General-purpose-timers" ]
+pub mod tim11 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        _reserved0: [u8; 8usize],
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        # [ doc = "0x18 - capture/compare mode register 1 (output mode)" ]
+        pub ccmr1_output: Ccmr1Output,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x20 - capture/compare enable register" ]
+        pub ccer: Ccer,
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+        _reserved2: [u8; 4usize],
+        # [ doc = "0x34 - capture/compare register 1" ]
+        pub ccr1: Ccr1,
+        _reserved3: [u8; 24usize],
+        # [ doc = "0x50 - option register" ]
+        pub or: Or,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CkdR {
+            bits: u8,
+        }
+        impl CkdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CkdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CkdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&self) -> CkdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CkdR { bits }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:9 - Clock division" ]
+            # [ inline ( always ) ]
+            pub fn ckd(&mut self) -> _CkdW {
+                _CkdW { w: self }
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ieR {
+            bits: u8,
+        }
+        impl Cc1ieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&self) -> Cc1ieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ieR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1ie(&mut self) -> _Cc1ieW {
+                _Cc1ieW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ofR {
+            bits: u8,
+        }
+        impl Cc1ofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1ifR {
+            bits: u8,
+        }
+        impl Cc1ifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1ifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1ifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&self) -> Cc1ofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ofR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&self) -> Cc1ifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1ifR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - Capture/Compare 1 overcapture flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1of(&mut self) -> _Cc1ofW {
+                _Cc1ofW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn cc1if(&mut self) -> _Cc1ifW {
+                _Cc1ifW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1gW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1gW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Capture/compare 1 generation" ]
+            # [ inline ( always ) ]
+            pub fn cc1g(&mut self) -> _Cc1gW {
+                _Cc1gW { w: self }
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub struct Ccmr1Output {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (output mode)" ]
+    pub mod ccmr1_output {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Output {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1mR {
+            bits: u8,
+        }
+        impl Oc1mR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1peR {
+            bits: u8,
+        }
+        impl Oc1peR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oc1feR {
+            bits: u8,
+        }
+        impl Oc1feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1mW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1mW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1peW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1peW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oc1feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oc1feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&self) -> Oc1mR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1mR { bits }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&self) -> Oc1peR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1peR { bits }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&self) -> Oc1feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oc1feR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:6 - Output Compare 1 mode" ]
+            # [ inline ( always ) ]
+            pub fn oc1m(&mut self) -> _Oc1mW {
+                _Oc1mW { w: self }
+            }
+            # [ doc = "Bit 3 - Output Compare 1 preload enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1pe(&mut self) -> _Oc1peW {
+                _Oc1peW { w: self }
+            }
+            # [ doc = "Bit 2 - Output Compare 1 fast enable" ]
+            # [ inline ( always ) ]
+            pub fn oc1fe(&mut self) -> _Oc1feW {
+                _Oc1feW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub struct Ccmr1Input {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare mode register 1 (input mode)" ]
+    pub mod ccmr1_input {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccmr1Input {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ic1fR {
+            bits: u8,
+        }
+        impl Ic1fR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcpcsR {
+            bits: u8,
+        }
+        impl IcpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1sR {
+            bits: u8,
+        }
+        impl Cc1sR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ic1fW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ic1fW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1sW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1sW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&self) -> Ic1fR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ic1fR { bits }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&self) -> IcpcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcpcsR { bits }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&self) -> Cc1sR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1sR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:7 - Input capture 1 filter" ]
+            # [ inline ( always ) ]
+            pub fn ic1f(&mut self) -> _Ic1fW {
+                _Ic1fW { w: self }
+            }
+            # [ doc = "Bits 2:3 - Input capture 1 prescaler" ]
+            # [ inline ( always ) ]
+            pub fn icpcs(&mut self) -> _IcpcsW {
+                _IcpcsW { w: self }
+            }
+            # [ doc = "Bits 0:1 - Capture/Compare 1 selection" ]
+            # [ inline ( always ) ]
+            pub fn cc1s(&mut self) -> _Cc1sW {
+                _Cc1sW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub struct Ccer {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare enable register" ]
+    pub mod ccer {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccer {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1npR {
+            bits: u8,
+        }
+        impl Cc1npR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1pR {
+            bits: u8,
+        }
+        impl Cc1pR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Cc1eR {
+            bits: u8,
+        }
+        impl Cc1eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1npW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1npW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1pW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1pW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Cc1eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Cc1eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&self) -> Cc1npR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1npR { bits }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&self) -> Cc1pR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1pR { bits }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&self) -> Cc1eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Cc1eR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 3 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1np(&mut self) -> _Cc1npW {
+                _Cc1npW { w: self }
+            }
+            # [ doc = "Bit 1 - Capture/Compare 1 output Polarity" ]
+            # [ inline ( always ) ]
+            pub fn cc1p(&mut self) -> _Cc1pW {
+                _Cc1pW { w: self }
+            }
+            # [ doc = "Bit 0 - Capture/Compare 1 output enable" ]
+            # [ inline ( always ) ]
+            pub fn cc1e(&mut self) -> _Cc1eW {
+                _Cc1eW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntR {
+            bits: u16,
+        }
+        impl CntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&self) -> CntR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&mut self) -> _CntW {
+                _CntW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrR {
+            bits: u16,
+        }
+        impl ArrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&self) -> ArrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&mut self) -> _ArrW {
+                _ArrW { w: self }
+            }
+        }
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub struct Ccr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "capture/compare register 1" ]
+    pub mod ccr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ccr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ccr1R {
+            bits: u16,
+        }
+        impl Ccr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ccr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ccr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&self) -> Ccr1R {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Ccr1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Capture/Compare 1 value" ]
+            # [ inline ( always ) ]
+            pub fn ccr1(&mut self) -> _Ccr1W {
+                _Ccr1W { w: self }
+            }
+        }
+    }
+    # [ doc = "option register" ]
+    pub struct Or {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "option register" ]
+    pub mod or {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Or {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RmpR {
+            bits: u8,
+        }
+        impl RmpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RmpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RmpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - Input 1 remapping capability" ]
+            # [ inline ( always ) ]
+            pub fn rmp(&self) -> RmpR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RmpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - Input 1 remapping capability" ]
+            # [ inline ( always ) ]
+            pub fn rmp(&mut self) -> _RmpW {
+                _RmpW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "General-purpose-timers" ]
+pub struct Tim11 {
+    register_block: tim11::RegisterBlock,
+}
+impl Deref for Tim11 {
+    type Target = tim11::RegisterBlock;
+    fn deref(&self) -> &tim11::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Basic timers" ]
+pub const TIM6: Peripheral<Tim6> = unsafe { Peripheral::new(1073745920) };
+# [ doc = "Basic timers" ]
+pub mod tim6 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - control register 1" ]
+        pub cr1: Cr1,
+        # [ doc = "0x04 - control register 2" ]
+        pub cr2: Cr2,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x0c - DMA/Interrupt enable register" ]
+        pub dier: Dier,
+        # [ doc = "0x10 - status register" ]
+        pub sr: Sr,
+        # [ doc = "0x14 - event generation register" ]
+        pub egr: Egr,
+        _reserved1: [u8; 12usize],
+        # [ doc = "0x24 - counter" ]
+        pub cnt: Cnt,
+        # [ doc = "0x28 - prescaler" ]
+        pub psc: Psc,
+        # [ doc = "0x2c - auto-reload register" ]
+        pub arr: Arr,
+    }
+    # [ doc = "control register 1" ]
+    pub struct Cr1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 1" ]
+    pub mod cr1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpeR {
+            bits: u8,
+        }
+        impl ArpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpmR {
+            bits: u8,
+        }
+        impl OpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UrsR {
+            bits: u8,
+        }
+        impl UrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdisR {
+            bits: u8,
+        }
+        impl UdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CenR {
+            bits: u8,
+        }
+        impl CenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UrsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UrsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&self) -> ArpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpeR { bits }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&self) -> OpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpmR { bits }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&self) -> UrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UrsR { bits }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&self) -> UdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdisR { bits }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&self) -> CenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 7 - Auto-reload preload enable" ]
+            # [ inline ( always ) ]
+            pub fn arpe(&mut self) -> _ArpeW {
+                _ArpeW { w: self }
+            }
+            # [ doc = "Bit 3 - One-pulse mode" ]
+            # [ inline ( always ) ]
+            pub fn opm(&mut self) -> _OpmW {
+                _OpmW { w: self }
+            }
+            # [ doc = "Bit 2 - Update request source" ]
+            # [ inline ( always ) ]
+            pub fn urs(&mut self) -> _UrsW {
+                _UrsW { w: self }
+            }
+            # [ doc = "Bit 1 - Update disable" ]
+            # [ inline ( always ) ]
+            pub fn udis(&mut self) -> _UdisW {
+                _UdisW { w: self }
+            }
+            # [ doc = "Bit 0 - Counter enable" ]
+            # [ inline ( always ) ]
+            pub fn cen(&mut self) -> _CenW {
+                _CenW { w: self }
+            }
+        }
+    }
+    # [ doc = "control register 2" ]
+    pub struct Cr2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "control register 2" ]
+    pub mod cr2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmsR {
+            bits: u8,
+        }
+        impl MmsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&self) -> MmsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:6 - Master mode selection" ]
+            # [ inline ( always ) ]
+            pub fn mms(&mut self) -> _MmsW {
+                _MmsW { w: self }
+            }
+        }
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub struct Dier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "DMA/Interrupt enable register" ]
+    pub mod dier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UdeR {
+            bits: u8,
+        }
+        impl UdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UieR {
+            bits: u8,
+        }
+        impl UieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&self) -> UdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UdeR { bits }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&self) -> UieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 8 - Update DMA request enable" ]
+            # [ inline ( always ) ]
+            pub fn ude(&mut self) -> _UdeW {
+                _UdeW { w: self }
+            }
+            # [ doc = "Bit 0 - Update interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn uie(&mut self) -> _UieW {
+                _UieW { w: self }
+            }
+        }
+    }
+    # [ doc = "status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UifR {
+            bits: u8,
+        }
+        impl UifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&self) -> UifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UifR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Update interrupt flag" ]
+            # [ inline ( always ) ]
+            pub fn uif(&mut self) -> _UifW {
+                _UifW { w: self }
+            }
+        }
+    }
+    # [ doc = "event generation register" ]
+    pub struct Egr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "event generation register" ]
+    pub mod egr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Egr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Update generation" ]
+            # [ inline ( always ) ]
+            pub fn ug(&mut self) -> _UgW {
+                _UgW { w: self }
+            }
+        }
+    }
+    # [ doc = "counter" ]
+    pub struct Cnt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "counter" ]
+    pub mod cnt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cnt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CntR {
+            bits: u16,
+        }
+        impl CntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&self) -> CntR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                CntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Low counter value" ]
+            # [ inline ( always ) ]
+            pub fn cnt(&mut self) -> _CntW {
+                _CntW { w: self }
+            }
+        }
+    }
+    # [ doc = "prescaler" ]
+    pub struct Psc {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "prescaler" ]
+    pub mod psc {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Psc {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PscR {
+            bits: u16,
+        }
+        impl PscR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PscW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PscW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&self) -> PscR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PscR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Prescaler value" ]
+            # [ inline ( always ) ]
+            pub fn psc(&mut self) -> _PscW {
+                _PscW { w: self }
+            }
+        }
+    }
+    # [ doc = "auto-reload register" ]
+    pub struct Arr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "auto-reload register" ]
+    pub mod arr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Arr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArrR {
+            bits: u16,
+        }
+        impl ArrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&self) -> ArrR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                ArrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Low Auto-reload value" ]
+            # [ inline ( always ) ]
+            pub fn arr(&mut self) -> _ArrW {
+                _ArrW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Basic timers" ]
+pub struct Tim6 {
+    register_block: tim6::RegisterBlock,
+}
+impl Deref for Tim6 {
+    type Target = tim6::RegisterBlock;
+    fn deref(&self) -> &tim6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "TIM7" ]
+pub const TIM7: Peripheral<Tim7> = unsafe { Peripheral::new(1073746944) };
+# [ doc = r" Register block" ]
+pub struct Tim7 {
+    register_block: tim6::RegisterBlock,
+}
+impl Deref for Tim7 {
+    type Target = tim6::RegisterBlock;
+    fn deref(&self) -> &tim6::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Ethernet: media access control (MAC)" ]
+pub const ETHERNET_MAC: Peripheral<EthernetMac> =
+    unsafe { Peripheral::new(1073905664) };
+# [ doc = "Ethernet: media access control (MAC)" ]
+pub mod ethernet_mac {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Ethernet MAC configuration register" ]
+        pub maccr: Maccr,
+        # [ doc = "0x04 - Ethernet MAC frame filter register" ]
+        pub macffr: Macffr,
+        # [ doc = "0x08 - Ethernet MAC hash table high register" ]
+        pub machthr: Machthr,
+        # [ doc = "0x0c - Ethernet MAC hash table low register" ]
+        pub machtlr: Machtlr,
+        # [ doc = "0x10 - Ethernet MAC MII address register" ]
+        pub macmiiar: Macmiiar,
+        # [ doc = "0x14 - Ethernet MAC MII data register" ]
+        pub macmiidr: Macmiidr,
+        # [ doc = "0x18 - Ethernet MAC flow control register" ]
+        pub macfcr: Macfcr,
+        # [ doc = "0x1c - Ethernet MAC VLAN tag register" ]
+        pub macvlantr: Macvlantr,
+        _reserved0: [u8; 12usize],
+        # [ doc = "0x2c - Ethernet MAC PMT control and status register" ]
+        pub macpmtcsr: Macpmtcsr,
+        _reserved1: [u8; 4usize],
+        # [ doc = "0x34 - Ethernet MAC debug register" ]
+        pub macdbgr: Macdbgr,
+        # [ doc = "0x38 - Ethernet MAC interrupt status register" ]
+        pub macsr: Macsr,
+        # [ doc = "0x3c - Ethernet MAC interrupt mask register" ]
+        pub macimr: Macimr,
+        # [ doc = "0x40 - Ethernet MAC address 0 high register" ]
+        pub maca0hr: Maca0hr,
+        # [ doc = "0x44 - Ethernet MAC address 0 low register" ]
+        pub maca0lr: Maca0lr,
+        # [ doc = "0x48 - Ethernet MAC address 1 high register" ]
+        pub maca1hr: Maca1hr,
+        # [ doc = "0x4c - Ethernet MAC address1 low register" ]
+        pub maca1lr: Maca1lr,
+        # [ doc = "0x50 - Ethernet MAC address 2 high register" ]
+        pub maca2hr: Maca2hr,
+        # [ doc = "0x54 - Ethernet MAC address 2 low register" ]
+        pub maca2lr: Maca2lr,
+        # [ doc = "0x58 - Ethernet MAC address 3 high register" ]
+        pub maca3hr: Maca3hr,
+        # [ doc = "0x5c - Ethernet MAC address 3 low register" ]
+        pub maca3lr: Maca3lr,
+    }
+    # [ doc = "Ethernet MAC configuration register" ]
+    pub struct Maccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC configuration register" ]
+    pub mod maccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maccr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ReR {
+            bits: u8,
+        }
+        impl ReR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TeR {
+            bits: u8,
+        }
+        impl TeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcR {
+            bits: u8,
+        }
+        impl DcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BlR {
+            bits: u8,
+        }
+        impl BlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ApcsR {
+            bits: u8,
+        }
+        impl ApcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RdR {
+            bits: u8,
+        }
+        impl RdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IpcoR {
+            bits: u8,
+        }
+        impl IpcoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmR {
+            bits: u8,
+        }
+        impl DmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LmR {
+            bits: u8,
+        }
+        impl LmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RodR {
+            bits: u8,
+        }
+        impl RodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FesR {
+            bits: u8,
+        }
+        impl FesR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsdR {
+            bits: u8,
+        }
+        impl CsdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IfgR {
+            bits: u8,
+        }
+        impl IfgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct JdR {
+            bits: u8,
+        }
+        impl JdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdR {
+            bits: u8,
+        }
+        impl WdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CstfR {
+            bits: u8,
+        }
+        impl CstfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ReW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ReW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ApcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ApcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IpcoW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IpcoW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FesW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FesW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IfgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IfgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _JdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _JdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CstfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CstfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 2 - RE" ]
+            # [ inline ( always ) ]
+            pub fn re(&self) -> ReR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ReR { bits }
+            }
+            # [ doc = "Bit 3 - TE" ]
+            # [ inline ( always ) ]
+            pub fn te(&self) -> TeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TeR { bits }
+            }
+            # [ doc = "Bit 4 - DC" ]
+            # [ inline ( always ) ]
+            pub fn dc(&self) -> DcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcR { bits }
+            }
+            # [ doc = "Bits 5:6 - BL" ]
+            # [ inline ( always ) ]
+            pub fn bl(&self) -> BlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BlR { bits }
+            }
+            # [ doc = "Bit 7 - APCS" ]
+            # [ inline ( always ) ]
+            pub fn apcs(&self) -> ApcsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ApcsR { bits }
+            }
+            # [ doc = "Bit 9 - RD" ]
+            # [ inline ( always ) ]
+            pub fn rd(&self) -> RdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RdR { bits }
+            }
+            # [ doc = "Bit 10 - IPCO" ]
+            # [ inline ( always ) ]
+            pub fn ipco(&self) -> IpcoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IpcoR { bits }
+            }
+            # [ doc = "Bit 11 - DM" ]
+            # [ inline ( always ) ]
+            pub fn dm(&self) -> DmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmR { bits }
+            }
+            # [ doc = "Bit 12 - LM" ]
+            # [ inline ( always ) ]
+            pub fn lm(&self) -> LmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LmR { bits }
+            }
+            # [ doc = "Bit 13 - ROD" ]
+            # [ inline ( always ) ]
+            pub fn rod(&self) -> RodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RodR { bits }
+            }
+            # [ doc = "Bit 14 - FES" ]
+            # [ inline ( always ) ]
+            pub fn fes(&self) -> FesR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FesR { bits }
+            }
+            # [ doc = "Bit 16 - CSD" ]
+            # [ inline ( always ) ]
+            pub fn csd(&self) -> CsdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsdR { bits }
+            }
+            # [ doc = "Bits 17:19 - IFG" ]
+            # [ inline ( always ) ]
+            pub fn ifg(&self) -> IfgR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IfgR { bits }
+            }
+            # [ doc = "Bit 22 - JD" ]
+            # [ inline ( always ) ]
+            pub fn jd(&self) -> JdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                JdR { bits }
+            }
+            # [ doc = "Bit 23 - WD" ]
+            # [ inline ( always ) ]
+            pub fn wd(&self) -> WdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdR { bits }
+            }
+            # [ doc = "Bit 25 - CSTF" ]
+            # [ inline ( always ) ]
+            pub fn cstf(&self) -> CstfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CstfR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 32768 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 2 - RE" ]
+            # [ inline ( always ) ]
+            pub fn re(&mut self) -> _ReW {
+                _ReW { w: self }
+            }
+            # [ doc = "Bit 3 - TE" ]
+            # [ inline ( always ) ]
+            pub fn te(&mut self) -> _TeW {
+                _TeW { w: self }
+            }
+            # [ doc = "Bit 4 - DC" ]
+            # [ inline ( always ) ]
+            pub fn dc(&mut self) -> _DcW {
+                _DcW { w: self }
+            }
+            # [ doc = "Bits 5:6 - BL" ]
+            # [ inline ( always ) ]
+            pub fn bl(&mut self) -> _BlW {
+                _BlW { w: self }
+            }
+            # [ doc = "Bit 7 - APCS" ]
+            # [ inline ( always ) ]
+            pub fn apcs(&mut self) -> _ApcsW {
+                _ApcsW { w: self }
+            }
+            # [ doc = "Bit 9 - RD" ]
+            # [ inline ( always ) ]
+            pub fn rd(&mut self) -> _RdW {
+                _RdW { w: self }
+            }
+            # [ doc = "Bit 10 - IPCO" ]
+            # [ inline ( always ) ]
+            pub fn ipco(&mut self) -> _IpcoW {
+                _IpcoW { w: self }
+            }
+            # [ doc = "Bit 11 - DM" ]
+            # [ inline ( always ) ]
+            pub fn dm(&mut self) -> _DmW {
+                _DmW { w: self }
+            }
+            # [ doc = "Bit 12 - LM" ]
+            # [ inline ( always ) ]
+            pub fn lm(&mut self) -> _LmW {
+                _LmW { w: self }
+            }
+            # [ doc = "Bit 13 - ROD" ]
+            # [ inline ( always ) ]
+            pub fn rod(&mut self) -> _RodW {
+                _RodW { w: self }
+            }
+            # [ doc = "Bit 14 - FES" ]
+            # [ inline ( always ) ]
+            pub fn fes(&mut self) -> _FesW {
+                _FesW { w: self }
+            }
+            # [ doc = "Bit 16 - CSD" ]
+            # [ inline ( always ) ]
+            pub fn csd(&mut self) -> _CsdW {
+                _CsdW { w: self }
+            }
+            # [ doc = "Bits 17:19 - IFG" ]
+            # [ inline ( always ) ]
+            pub fn ifg(&mut self) -> _IfgW {
+                _IfgW { w: self }
+            }
+            # [ doc = "Bit 22 - JD" ]
+            # [ inline ( always ) ]
+            pub fn jd(&mut self) -> _JdW {
+                _JdW { w: self }
+            }
+            # [ doc = "Bit 23 - WD" ]
+            # [ inline ( always ) ]
+            pub fn wd(&mut self) -> _WdW {
+                _WdW { w: self }
+            }
+            # [ doc = "Bit 25 - CSTF" ]
+            # [ inline ( always ) ]
+            pub fn cstf(&mut self) -> _CstfW {
+                _CstfW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC frame filter register" ]
+    pub struct Macffr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC frame filter register" ]
+    pub mod macffr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macffr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmR {
+            bits: u8,
+        }
+        impl PmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HuR {
+            bits: u8,
+        }
+        impl HuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HmR {
+            bits: u8,
+        }
+        impl HmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DaifR {
+            bits: u8,
+        }
+        impl DaifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RamR {
+            bits: u8,
+        }
+        impl RamR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BfdR {
+            bits: u8,
+        }
+        impl BfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcfR {
+            bits: u8,
+        }
+        impl PcfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SaifR {
+            bits: u8,
+        }
+        impl SaifR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SafR {
+            bits: u8,
+        }
+        impl SafR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HpfR {
+            bits: u8,
+        }
+        impl HpfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RaR {
+            bits: u8,
+        }
+        impl RaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DaifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DaifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RamW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RamW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PcfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PcfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SaifW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SaifW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SafW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SafW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HpfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HpfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pm(&self) -> PmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hu(&self) -> HuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HuR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hm(&self) -> HmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HmR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn daif(&self) -> DaifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DaifR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ram(&self) -> RamR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RamR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn bfd(&self) -> BfdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BfdR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pcf(&self) -> PcfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcfR { bits }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn saif(&self) -> SaifR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SaifR { bits }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn saf(&self) -> SafR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SafR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hpf(&self) -> HpfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HpfR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ra(&self) -> RaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pm(&mut self) -> _PmW {
+                _PmW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hu(&mut self) -> _HuW {
+                _HuW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hm(&mut self) -> _HmW {
+                _HmW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn daif(&mut self) -> _DaifW {
+                _DaifW { w: self }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ram(&mut self) -> _RamW {
+                _RamW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn bfd(&mut self) -> _BfdW {
+                _BfdW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pcf(&mut self) -> _PcfW {
+                _PcfW { w: self }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn saif(&mut self) -> _SaifW {
+                _SaifW { w: self }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn saf(&mut self) -> _SafW {
+                _SafW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hpf(&mut self) -> _HpfW {
+                _HpfW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ra(&mut self) -> _RaW {
+                _RaW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC hash table high register" ]
+    pub struct Machthr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC hash table high register" ]
+    pub mod machthr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Machthr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HthR {
+            bits: u32,
+        }
+        impl HthR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HthW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HthW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hth(&self) -> HthR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HthR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hth(&mut self) -> _HthW {
+                _HthW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC hash table low register" ]
+    pub struct Machtlr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC hash table low register" ]
+    pub mod machtlr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Machtlr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtlR {
+            bits: u32,
+        }
+        impl HtlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HtlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HtlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn htl(&self) -> HtlR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HtlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn htl(&mut self) -> _HtlW {
+                _HtlW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC MII address register" ]
+    pub struct Macmiiar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC MII address register" ]
+    pub mod macmiiar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macmiiar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbR {
+            bits: u8,
+        }
+        impl MbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MwR {
+            bits: u8,
+        }
+        impl MwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrR {
+            bits: u8,
+        }
+        impl CrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MrR {
+            bits: u8,
+        }
+        impl MrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PaR {
+            bits: u8,
+        }
+        impl PaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mb(&self) -> MbR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mw(&self) -> MwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MwR { bits }
+            }
+            # [ doc = "Bits 2:4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn cr(&self) -> CrR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrR { bits }
+            }
+            # [ doc = "Bits 6:10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mr(&self) -> MrR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MrR { bits }
+            }
+            # [ doc = "Bits 11:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pa(&self) -> PaR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mb(&mut self) -> _MbW {
+                _MbW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mw(&mut self) -> _MwW {
+                _MwW { w: self }
+            }
+            # [ doc = "Bits 2:4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn cr(&mut self) -> _CrW {
+                _CrW { w: self }
+            }
+            # [ doc = "Bits 6:10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mr(&mut self) -> _MrW {
+                _MrW { w: self }
+            }
+            # [ doc = "Bits 11:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pa(&mut self) -> _PaW {
+                _PaW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC MII data register" ]
+    pub struct Macmiidr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC MII data register" ]
+    pub mod macmiidr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macmiidr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TdR {
+            bits: u16,
+        }
+        impl TdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn td(&self) -> TdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn td(&mut self) -> _TdW {
+                _TdW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC flow control register" ]
+    pub struct Macfcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC flow control register" ]
+    pub mod macfcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macfcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FcbR {
+            bits: u8,
+        }
+        impl FcbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TfceR {
+            bits: u8,
+        }
+        impl TfceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfceR {
+            bits: u8,
+        }
+        impl RfceR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UpfdR {
+            bits: u8,
+        }
+        impl UpfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PltR {
+            bits: u8,
+        }
+        impl PltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ZqpdR {
+            bits: u8,
+        }
+        impl ZqpdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtR {
+            bits: u16,
+        }
+        impl PtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FcbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FcbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TfceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TfceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RfceW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RfceW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UpfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UpfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ZqpdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ZqpdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fcb(&self) -> FcbR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FcbR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tfce(&self) -> TfceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TfceR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfce(&self) -> RfceR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RfceR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn upfd(&self) -> UpfdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UpfdR { bits }
+            }
+            # [ doc = "Bits 4:5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn plt(&self) -> PltR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PltR { bits }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn zqpd(&self) -> ZqpdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ZqpdR { bits }
+            }
+            # [ doc = "Bits 16:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pt(&self) -> PtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fcb(&mut self) -> _FcbW {
+                _FcbW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tfce(&mut self) -> _TfceW {
+                _TfceW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfce(&mut self) -> _RfceW {
+                _RfceW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn upfd(&mut self) -> _UpfdW {
+                _UpfdW { w: self }
+            }
+            # [ doc = "Bits 4:5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn plt(&mut self) -> _PltW {
+                _PltW { w: self }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn zqpd(&mut self) -> _ZqpdW {
+                _ZqpdW { w: self }
+            }
+            # [ doc = "Bits 16:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pt(&mut self) -> _PtW {
+                _PtW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC VLAN tag register" ]
+    pub struct Macvlantr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC VLAN tag register" ]
+    pub mod macvlantr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macvlantr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VlantiR {
+            bits: u16,
+        }
+        impl VlantiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VlantcR {
+            bits: u8,
+        }
+        impl VlantcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VlantiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VlantiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VlantcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VlantcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn vlanti(&self) -> VlantiR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                VlantiR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn vlantc(&self) -> VlantcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VlantcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn vlanti(&mut self) -> _VlantiW {
+                _VlantiW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn vlantc(&mut self) -> _VlantcW {
+                _VlantcW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC PMT control and status register" ]
+    pub struct Macpmtcsr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC PMT control and status register" ]
+    pub mod macpmtcsr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macpmtcsr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PdR {
+            bits: u8,
+        }
+        impl PdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpeR {
+            bits: u8,
+        }
+        impl MpeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WfeR {
+            bits: u8,
+        }
+        impl WfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MprR {
+            bits: u8,
+        }
+        impl MprR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WfrR {
+            bits: u8,
+        }
+        impl WfrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GuR {
+            bits: u8,
+        }
+        impl GuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WffrprR {
+            bits: u8,
+        }
+        impl WffrprR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MprW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MprW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WfrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WfrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WffrprW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WffrprW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pd(&self) -> PdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PdR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mpe(&self) -> MpeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MpeR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wfe(&self) -> WfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WfeR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mpr(&self) -> MprR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MprR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wfr(&self) -> WfrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WfrR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn gu(&self) -> GuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GuR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wffrpr(&self) -> WffrprR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WffrprR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pd(&mut self) -> _PdW {
+                _PdW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mpe(&mut self) -> _MpeW {
+                _MpeW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wfe(&mut self) -> _WfeW {
+                _WfeW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mpr(&mut self) -> _MprW {
+                _MprW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wfr(&mut self) -> _WfrW {
+                _WfrW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn gu(&mut self) -> _GuW {
+                _GuW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn wffrpr(&mut self) -> _WffrprW {
+                _WffrprW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC debug register" ]
+    pub struct Macdbgr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC debug register" ]
+    pub mod macdbgr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Macdbgr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrR {
+            bits: u8,
+        }
+        impl CrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsrR {
+            bits: u8,
+        }
+        impl CsrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RorR {
+            bits: u8,
+        }
+        impl RorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McfR {
+            bits: u8,
+        }
+        impl McfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McpR {
+            bits: u8,
+        }
+        impl McpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McfhpR {
+            bits: u8,
+        }
+        impl McfhpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - CR" ]
+            # [ inline ( always ) ]
+            pub fn cr(&self) -> CrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrR { bits }
+            }
+            # [ doc = "Bit 1 - CSR" ]
+            # [ inline ( always ) ]
+            pub fn csr(&self) -> CsrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsrR { bits }
+            }
+            # [ doc = "Bit 2 - ROR" ]
+            # [ inline ( always ) ]
+            pub fn ror(&self) -> RorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RorR { bits }
+            }
+            # [ doc = "Bit 3 - MCF" ]
+            # [ inline ( always ) ]
+            pub fn mcf(&self) -> McfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McfR { bits }
+            }
+            # [ doc = "Bit 4 - MCP" ]
+            # [ inline ( always ) ]
+            pub fn mcp(&self) -> McpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McpR { bits }
+            }
+            # [ doc = "Bit 5 - MCFHP" ]
+            # [ inline ( always ) ]
+            pub fn mcfhp(&self) -> McfhpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McfhpR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC interrupt status register" ]
+    pub struct Macsr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC interrupt status register" ]
+    pub mod macsr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macsr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmtsR {
+            bits: u8,
+        }
+        impl PmtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmcsR {
+            bits: u8,
+        }
+        impl MmcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmcrsR {
+            bits: u8,
+        }
+        impl MmcrsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmctsR {
+            bits: u8,
+        }
+        impl MmctsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TstsR {
+            bits: u8,
+        }
+        impl TstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pmts(&self) -> PmtsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmtsR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mmcs(&self) -> MmcsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmcsR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mmcrs(&self) -> MmcrsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmcrsR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mmcts(&self) -> MmctsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmctsR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsts(&self) -> TstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TstsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsts(&mut self) -> _TstsW {
+                _TstsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC interrupt mask register" ]
+    pub struct Macimr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC interrupt mask register" ]
+    pub mod macimr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Macimr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmtimR {
+            bits: u8,
+        }
+        impl PmtimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TstimR {
+            bits: u8,
+        }
+        impl TstimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PmtimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PmtimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TstimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TstimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pmtim(&self) -> PmtimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmtimR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tstim(&self) -> TstimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TstimR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pmtim(&mut self) -> _PmtimW {
+                _PmtimW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tstim(&mut self) -> _TstimW {
+                _TstimW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 0 high register" ]
+    pub struct Maca0hr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 0 high register" ]
+    pub mod maca0hr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca0hr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca0hR {
+            bits: u16,
+        }
+        impl Maca0hR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MoR {
+            bits: u8,
+        }
+        impl MoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca0hW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca0hW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - MAC address0 high" ]
+            # [ inline ( always ) ]
+            pub fn maca0h(&self) -> Maca0hR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Maca0hR { bits }
+            }
+            # [ doc = "Bit 31 - Always 1" ]
+            # [ inline ( always ) ]
+            pub fn mo(&self) -> MoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MoR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1114111 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - MAC address0 high" ]
+            # [ inline ( always ) ]
+            pub fn maca0h(&mut self) -> _Maca0hW {
+                _Maca0hW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 0 low register" ]
+    pub struct Maca0lr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 0 low register" ]
+    pub mod maca0lr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca0lr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca0lR {
+            bits: u32,
+        }
+        impl Maca0lR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca0lW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca0lW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - 0" ]
+            # [ inline ( always ) ]
+            pub fn maca0l(&self) -> Maca0lR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Maca0lR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - 0" ]
+            # [ inline ( always ) ]
+            pub fn maca0l(&mut self) -> _Maca0lW {
+                _Maca0lW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 1 high register" ]
+    pub struct Maca1hr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 1 high register" ]
+    pub mod maca1hr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca1hr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca1hR {
+            bits: u16,
+        }
+        impl Maca1hR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbcR {
+            bits: u8,
+        }
+        impl MbcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SaR {
+            bits: u8,
+        }
+        impl SaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AeR {
+            bits: u8,
+        }
+        impl AeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca1hW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca1hW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca1h(&self) -> Maca1hR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Maca1hR { bits }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&self) -> MbcR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbcR { bits }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&self) -> SaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SaR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&self) -> AeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 65535 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca1h(&mut self) -> _Maca1hW {
+                _Maca1hW { w: self }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&mut self) -> _MbcW {
+                _MbcW { w: self }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&mut self) -> _SaW {
+                _SaW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&mut self) -> _AeW {
+                _AeW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address1 low register" ]
+    pub struct Maca1lr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address1 low register" ]
+    pub mod maca1lr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca1lr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca1lrR {
+            bits: u32,
+        }
+        impl Maca1lrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca1lrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca1lrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca1lr(&self) -> Maca1lrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Maca1lrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca1lr(&mut self) -> _Maca1lrW {
+                _Maca1lrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 2 high register" ]
+    pub struct Maca2hr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 2 high register" ]
+    pub mod maca2hr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca2hr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mac2ahR {
+            bits: u16,
+        }
+        impl Mac2ahR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbcR {
+            bits: u8,
+        }
+        impl MbcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SaR {
+            bits: u8,
+        }
+        impl SaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AeR {
+            bits: u8,
+        }
+        impl AeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mac2ahW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mac2ahW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mac2ah(&self) -> Mac2ahR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Mac2ahR { bits }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&self) -> MbcR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbcR { bits }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&self) -> SaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SaR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&self) -> AeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 65535 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mac2ah(&mut self) -> _Mac2ahW {
+                _Mac2ahW { w: self }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&mut self) -> _MbcW {
+                _MbcW { w: self }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&mut self) -> _SaW {
+                _SaW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&mut self) -> _AeW {
+                _AeW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 2 low register" ]
+    pub struct Maca2lr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 2 low register" ]
+    pub mod maca2lr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca2lr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca2lR {
+            bits: u32,
+        }
+        impl Maca2lR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca2lW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca2lW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 2147483647;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca2l(&self) -> Maca2lR {
+                let bits = {
+                    const MASK: u32 = 2147483647;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Maca2lR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca2l(&mut self) -> _Maca2lW {
+                _Maca2lW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 3 high register" ]
+    pub struct Maca3hr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 3 high register" ]
+    pub mod maca3hr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca3hr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Maca3hR {
+            bits: u16,
+        }
+        impl Maca3hR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbcR {
+            bits: u8,
+        }
+        impl MbcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SaR {
+            bits: u8,
+        }
+        impl SaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AeR {
+            bits: u8,
+        }
+        impl AeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Maca3hW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Maca3hW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca3h(&self) -> Maca3hR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Maca3hR { bits }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&self) -> MbcR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbcR { bits }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&self) -> SaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SaR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&self) -> AeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AeR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 65535 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn maca3h(&mut self) -> _Maca3hW {
+                _Maca3hW { w: self }
+            }
+            # [ doc = "Bits 24:29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbc(&mut self) -> _MbcW {
+                _MbcW { w: self }
+            }
+            # [ doc = "Bit 30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sa(&mut self) -> _SaW {
+                _SaW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ae(&mut self) -> _AeW {
+                _AeW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MAC address 3 low register" ]
+    pub struct Maca3lr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MAC address 3 low register" ]
+    pub mod maca3lr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Maca3lr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mbca3lR {
+            bits: u32,
+        }
+        impl Mbca3lR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mbca3lW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mbca3lW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbca3l(&self) -> Mbca3lR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                Mbca3lR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mbca3l(&mut self) -> _Mbca3lW {
+                _Mbca3lW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Ethernet: media access control (MAC)" ]
+pub struct EthernetMac {
+    register_block: ethernet_mac::RegisterBlock,
+}
+impl Deref for EthernetMac {
+    type Target = ethernet_mac::RegisterBlock;
+    fn deref(&self) -> &ethernet_mac::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Ethernet: MAC management counters" ]
+pub const ETHERNET_MMC: Peripheral<EthernetMmc> =
+    unsafe { Peripheral::new(1073905920) };
+# [ doc = "Ethernet: MAC management counters" ]
+pub mod ethernet_mmc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Ethernet MMC control register" ]
+        pub mmccr: Mmccr,
+        # [ doc = "0x04 - Ethernet MMC receive interrupt register" ]
+        pub mmcrir: Mmcrir,
+        # [ doc = "0x08 - Ethernet MMC transmit interrupt register" ]
+        pub mmctir: Mmctir,
+        # [ doc = "0x0c - Ethernet MMC receive interrupt mask register" ]
+        pub mmcrimr: Mmcrimr,
+        # [ doc = "0x10 - Ethernet MMC transmit interrupt mask register" ]
+        pub mmctimr: Mmctimr,
+        _reserved0: [u8; 56usize],
+        # [ doc = "0x4c - Ethernet MMC transmitted good frames after a single collision counter" ]
+        pub mmctgfsccr: Mmctgfsccr,
+        # [ doc = "0x50 - Ethernet MMC transmitted good frames after more than a single collision" ]
+        pub mmctgfmsccr: Mmctgfmsccr,
+        _reserved1: [u8; 20usize],
+        # [ doc = "0x68 - Ethernet MMC transmitted good frames counter register" ]
+        pub mmctgfcr: Mmctgfcr,
+        _reserved2: [u8; 40usize],
+        # [ doc = "0x94 - Ethernet MMC received frames with CRC error counter register" ]
+        pub mmcrfcecr: Mmcrfcecr,
+        # [ doc = "0x98 - Ethernet MMC received frames with alignment error counter register" ]
+        pub mmcrfaecr: Mmcrfaecr,
+        _reserved3: [u8; 40usize],
+        # [ doc = "0xc4 - MMC received good unicast frames counter register" ]
+        pub mmcrgufcr: Mmcrgufcr,
+    }
+    # [ doc = "Ethernet MMC control register" ]
+    pub struct Mmccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC control register" ]
+    pub mod mmccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mmccr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CrR {
+            bits: u8,
+        }
+        impl CrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsrR {
+            bits: u8,
+        }
+        impl CsrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RorR {
+            bits: u8,
+        }
+        impl RorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McfR {
+            bits: u8,
+        }
+        impl McfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McpR {
+            bits: u8,
+        }
+        impl McpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McfhpR {
+            bits: u8,
+        }
+        impl McfhpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McfhpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McfhpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn cr(&self) -> CrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CrR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn csr(&self) -> CsrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsrR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ror(&self) -> RorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RorR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcf(&self) -> McfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McfR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcp(&self) -> McpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McpR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcfhp(&self) -> McfhpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McfhpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn cr(&mut self) -> _CrW {
+                _CrW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn csr(&mut self) -> _CsrW {
+                _CsrW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ror(&mut self) -> _RorW {
+                _RorW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcf(&mut self) -> _McfW {
+                _McfW { w: self }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcp(&mut self) -> _McpW {
+                _McpW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mcfhp(&mut self) -> _McfhpW {
+                _McfhpW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC receive interrupt register" ]
+    pub struct Mmcrir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC receive interrupt register" ]
+    pub mod mmcrir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mmcrir {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfcesR {
+            bits: u8,
+        }
+        impl RfcesR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfaesR {
+            bits: u8,
+        }
+        impl RfaesR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RgufsR {
+            bits: u8,
+        }
+        impl RgufsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RfcesW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RfcesW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RfaesW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RfaesW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RgufsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RgufsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfces(&self) -> RfcesR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RfcesR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfaes(&self) -> RfaesR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RfaesR { bits }
+            }
+            # [ doc = "Bit 17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rgufs(&self) -> RgufsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RgufsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfces(&mut self) -> _RfcesW {
+                _RfcesW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfaes(&mut self) -> _RfaesW {
+                _RfaesW { w: self }
+            }
+            # [ doc = "Bit 17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rgufs(&mut self) -> _RgufsW {
+                _RgufsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC transmit interrupt register" ]
+    pub struct Mmctir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC transmit interrupt register" ]
+    pub mod mmctir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmctir {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfscsR {
+            bits: u8,
+        }
+        impl TgfscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfmscsR {
+            bits: u8,
+        }
+        impl TgfmscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfsR {
+            bits: u8,
+        }
+        impl TgfsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfscs(&self) -> TgfscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfscsR { bits }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfmscs(&self) -> TgfmscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfmscsR { bits }
+            }
+            # [ doc = "Bit 21 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfs(&self) -> TgfsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfsR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC receive interrupt mask register" ]
+    pub struct Mmcrimr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC receive interrupt mask register" ]
+    pub mod mmcrimr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mmcrimr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfcemR {
+            bits: u8,
+        }
+        impl RfcemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfaemR {
+            bits: u8,
+        }
+        impl RfaemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RgufmR {
+            bits: u8,
+        }
+        impl RgufmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RfcemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RfcemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RfaemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RfaemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RgufmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RgufmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfcem(&self) -> RfcemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RfcemR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfaem(&self) -> RfaemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RfaemR { bits }
+            }
+            # [ doc = "Bit 17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rgufm(&self) -> RgufmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RgufmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfcem(&mut self) -> _RfcemW {
+                _RfcemW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfaem(&mut self) -> _RfaemW {
+                _RfaemW { w: self }
+            }
+            # [ doc = "Bit 17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rgufm(&mut self) -> _RgufmW {
+                _RgufmW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC transmit interrupt mask register" ]
+    pub struct Mmctimr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC transmit interrupt mask register" ]
+    pub mod mmctimr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mmctimr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfscmR {
+            bits: u8,
+        }
+        impl TgfscmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfmscmR {
+            bits: u8,
+        }
+        impl TgfmscmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfmR {
+            bits: u8,
+        }
+        impl TgfmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgfscmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgfscmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgfmscmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgfmscmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgfmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgfmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfscm(&self) -> TgfscmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfscmR { bits }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfmscm(&self) -> TgfmscmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfmscmR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfm(&self) -> TgfmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgfmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfscm(&mut self) -> _TgfscmW {
+                _TgfscmW { w: self }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfmscm(&mut self) -> _TgfmscmW {
+                _TgfmscmW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfm(&mut self) -> _TgfmW {
+                _TgfmW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC transmitted good frames after a single collision counter" ]
+    pub struct Mmctgfsccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC transmitted good frames after a single collision counter" ]
+    pub mod mmctgfsccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmctgfsccr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfsccR {
+            bits: u32,
+        }
+        impl TgfsccR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfscc(&self) -> TgfsccR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TgfsccR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC transmitted good frames after more than a single collision" ]
+    pub struct Mmctgfmsccr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC transmitted good frames after more than a single collision" ]
+    pub mod mmctgfmsccr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmctgfmsccr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfmsccR {
+            bits: u32,
+        }
+        impl TgfmsccR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tgfmscc(&self) -> TgfmsccR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TgfmsccR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC transmitted good frames counter register" ]
+    pub struct Mmctgfcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC transmitted good frames counter register" ]
+    pub mod mmctgfcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmctgfcr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgfcR {
+            bits: u32,
+        }
+        impl TgfcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - HTL" ]
+            # [ inline ( always ) ]
+            pub fn tgfc(&self) -> TgfcR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TgfcR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC received frames with CRC error counter register" ]
+    pub struct Mmcrfcecr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC received frames with CRC error counter register" ]
+    pub mod mmcrfcecr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmcrfcecr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfcfcR {
+            bits: u32,
+        }
+        impl RfcfcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfcfc(&self) -> RfcfcR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                RfcfcR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet MMC received frames with alignment error counter register" ]
+    pub struct Mmcrfaecr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet MMC received frames with alignment error counter register" ]
+    pub mod mmcrfaecr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmcrfaecr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RfaecR {
+            bits: u32,
+        }
+        impl RfaecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rfaec(&self) -> RfaecR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                RfaecR { bits }
+            }
+        }
+    }
+    # [ doc = "MMC received good unicast frames counter register" ]
+    pub struct Mmcrgufcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "MMC received good unicast frames counter register" ]
+    pub mod mmcrgufcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Mmcrgufcr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RgufcR {
+            bits: u32,
+        }
+        impl RgufcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rgufc(&self) -> RgufcR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                RgufcR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Ethernet: MAC management counters" ]
+pub struct EthernetMmc {
+    register_block: ethernet_mmc::RegisterBlock,
+}
+impl Deref for EthernetMmc {
+    type Target = ethernet_mmc::RegisterBlock;
+    fn deref(&self) -> &ethernet_mmc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Ethernet: Precision time protocol" ]
+pub const ETHERNET_PTP: Peripheral<EthernetPtp> =
+    unsafe { Peripheral::new(1073907456) };
+# [ doc = "Ethernet: Precision time protocol" ]
+pub mod ethernet_ptp {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Ethernet PTP time stamp control register" ]
+        pub ptptscr: Ptptscr,
+        # [ doc = "0x04 - Ethernet PTP subsecond increment register" ]
+        pub ptpssir: Ptpssir,
+        # [ doc = "0x08 - Ethernet PTP time stamp high register" ]
+        pub ptptshr: Ptptshr,
+        # [ doc = "0x0c - Ethernet PTP time stamp low register" ]
+        pub ptptslr: Ptptslr,
+        # [ doc = "0x10 - Ethernet PTP time stamp high update register" ]
+        pub ptptshur: Ptptshur,
+        # [ doc = "0x14 - Ethernet PTP time stamp low update register" ]
+        pub ptptslur: Ptptslur,
+        # [ doc = "0x18 - Ethernet PTP time stamp addend register" ]
+        pub ptptsar: Ptptsar,
+        # [ doc = "0x1c - Ethernet PTP target time high register" ]
+        pub ptptthr: Ptptthr,
+        # [ doc = "0x20 - Ethernet PTP target time low register" ]
+        pub ptpttlr: Ptpttlr,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x28 - Ethernet PTP time stamp status register" ]
+        pub ptptssr: Ptptssr,
+        # [ doc = "0x2c - Ethernet PTP PPS control register" ]
+        pub ptpppscr: Ptpppscr,
+    }
+    # [ doc = "Ethernet PTP time stamp control register" ]
+    pub struct Ptptscr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp control register" ]
+    pub mod ptptscr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptptscr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TseR {
+            bits: u8,
+        }
+        impl TseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsfcuR {
+            bits: u8,
+        }
+        impl TsfcuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tsptppsv2eR {
+            bits: u8,
+        }
+        impl Tsptppsv2eR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssptpoefeR {
+            bits: u8,
+        }
+        impl TssptpoefeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tssipv6feR {
+            bits: u8,
+        }
+        impl Tssipv6feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tssipv4feR {
+            bits: u8,
+        }
+        impl Tssipv4feR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssemeR {
+            bits: u8,
+        }
+        impl TssemeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssmrmeR {
+            bits: u8,
+        }
+        impl TssmrmeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TscntR {
+            bits: u8,
+        }
+        impl TscntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TspffmaeR {
+            bits: u8,
+        }
+        impl TspffmaeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsstiR {
+            bits: u8,
+        }
+        impl TsstiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsstuR {
+            bits: u8,
+        }
+        impl TsstuR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsiteR {
+            bits: u8,
+        }
+        impl TsiteR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TtsaruR {
+            bits: u8,
+        }
+        impl TtsaruR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssarfeR {
+            bits: u8,
+        }
+        impl TssarfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsssrR {
+            bits: u8,
+        }
+        impl TsssrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsfcuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsfcuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tsptppsv2eW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tsptppsv2eW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TssptpoefeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TssptpoefeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tssipv6feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tssipv6feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tssipv4feW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tssipv4feW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TssemeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TssemeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TssmrmeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TssmrmeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TscntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TscntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TspffmaeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TspffmaeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsstiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsstiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsstuW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsstuW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsiteW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsiteW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TtsaruW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TtsaruW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TssarfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TssarfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsssrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsssrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tse(&self) -> TseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TseR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsfcu(&self) -> TsfcuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsfcuR { bits }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsptppsv2e(&self) -> Tsptppsv2eR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tsptppsv2eR { bits }
+            }
+            # [ doc = "Bit 11 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssptpoefe(&self) -> TssptpoefeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssptpoefeR { bits }
+            }
+            # [ doc = "Bit 12 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssipv6fe(&self) -> Tssipv6feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tssipv6feR { bits }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssipv4fe(&self) -> Tssipv4feR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tssipv4feR { bits }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsseme(&self) -> TssemeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssemeR { bits }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssmrme(&self) -> TssmrmeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssmrmeR { bits }
+            }
+            # [ doc = "Bits 16:17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tscnt(&self) -> TscntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TscntR { bits }
+            }
+            # [ doc = "Bit 18 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tspffmae(&self) -> TspffmaeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TspffmaeR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssti(&self) -> TsstiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsstiR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsstu(&self) -> TsstuR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsstuR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsite(&self) -> TsiteR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsiteR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ttsaru(&self) -> TtsaruR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TtsaruR { bits }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssarfe(&self) -> TssarfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssarfeR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsssr(&self) -> TsssrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsssrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 8192 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tse(&mut self) -> _TseW {
+                _TseW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsfcu(&mut self) -> _TsfcuW {
+                _TsfcuW { w: self }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsptppsv2e(&mut self) -> _Tsptppsv2eW {
+                _Tsptppsv2eW { w: self }
+            }
+            # [ doc = "Bit 11 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssptpoefe(&mut self) -> _TssptpoefeW {
+                _TssptpoefeW { w: self }
+            }
+            # [ doc = "Bit 12 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssipv6fe(&mut self) -> _Tssipv6feW {
+                _Tssipv6feW { w: self }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssipv4fe(&mut self) -> _Tssipv4feW {
+                _Tssipv4feW { w: self }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsseme(&mut self) -> _TssemeW {
+                _TssemeW { w: self }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssmrme(&mut self) -> _TssmrmeW {
+                _TssmrmeW { w: self }
+            }
+            # [ doc = "Bits 16:17 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tscnt(&mut self) -> _TscntW {
+                _TscntW { w: self }
+            }
+            # [ doc = "Bit 18 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tspffmae(&mut self) -> _TspffmaeW {
+                _TspffmaeW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssti(&mut self) -> _TsstiW {
+                _TsstiW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsstu(&mut self) -> _TsstuW {
+                _TsstuW { w: self }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsite(&mut self) -> _TsiteW {
+                _TsiteW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ttsaru(&mut self) -> _TtsaruW {
+                _TtsaruW { w: self }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tssarfe(&mut self) -> _TssarfeW {
+                _TssarfeW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsssr(&mut self) -> _TsssrW {
+                _TsssrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP subsecond increment register" ]
+    pub struct Ptpssir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP subsecond increment register" ]
+    pub mod ptpssir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptpssir {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StssiR {
+            bits: u8,
+        }
+        impl StssiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StssiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StssiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stssi(&self) -> StssiR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StssiR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stssi(&mut self) -> _StssiW {
+                _StssiW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp high register" ]
+    pub struct Ptptshr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp high register" ]
+    pub mod ptptshr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ptptshr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StsR {
+            bits: u32,
+        }
+        impl StsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sts(&self) -> StsR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                StsR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp low register" ]
+    pub struct Ptptslr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp low register" ]
+    pub mod ptptslr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ptptslr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StssR {
+            bits: u32,
+        }
+        impl StssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StpnsR {
+            bits: u8,
+        }
+        impl StpnsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stss(&self) -> StssR {
+                let bits = {
+                    const MASK: u32 = 2147483647;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                StssR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stpns(&self) -> StpnsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StpnsR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp high update register" ]
+    pub struct Ptptshur {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp high update register" ]
+    pub mod ptptshur {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptptshur {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsusR {
+            bits: u32,
+        }
+        impl TsusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsus(&self) -> TsusR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TsusR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsus(&mut self) -> _TsusW {
+                _TsusW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp low update register" ]
+    pub struct Ptptslur {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp low update register" ]
+    pub mod ptptslur {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptptslur {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsussR {
+            bits: u32,
+        }
+        impl TsussR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsupnsR {
+            bits: u8,
+        }
+        impl TsupnsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsussW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsussW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 2147483647;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsupnsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsupnsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsuss(&self) -> TsussR {
+                let bits = {
+                    const MASK: u32 = 2147483647;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TsussR { bits }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsupns(&self) -> TsupnsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsupnsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:30 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsuss(&mut self) -> _TsussW {
+                _TsussW { w: self }
+            }
+            # [ doc = "Bit 31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsupns(&mut self) -> _TsupnsW {
+                _TsupnsW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp addend register" ]
+    pub struct Ptptsar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp addend register" ]
+    pub mod ptptsar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptptsar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsaR {
+            bits: u32,
+        }
+        impl TsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsa(&self) -> TsaR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TsaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsa(&mut self) -> _TsaW {
+                _TsaW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP target time high register" ]
+    pub struct Ptptthr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP target time high register" ]
+    pub mod ptptthr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptptthr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TtshR {
+            bits: u32,
+        }
+        impl TtshR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TtshW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TtshW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - 0" ]
+            # [ inline ( always ) ]
+            pub fn ttsh(&self) -> TtshR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TtshR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - 0" ]
+            # [ inline ( always ) ]
+            pub fn ttsh(&mut self) -> _TtshW {
+                _TtshW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP target time low register" ]
+    pub struct Ptpttlr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP target time low register" ]
+    pub mod ptpttlr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ptpttlr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TtslR {
+            bits: u32,
+        }
+        impl TtslR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TtslW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TtslW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ttsl(&self) -> TtslR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TtslR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ttsl(&mut self) -> _TtslW {
+                _TtslW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP time stamp status register" ]
+    pub struct Ptptssr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP time stamp status register" ]
+    pub mod ptptssr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ptptssr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssoR {
+            bits: u8,
+        }
+        impl TssoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsttrR {
+            bits: u8,
+        }
+        impl TsttrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsso(&self) -> TssoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssoR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsttr(&self) -> TsttrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsttrR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet PTP PPS control register" ]
+    pub struct Ptpppscr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet PTP PPS control register" ]
+    pub mod ptpppscr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ptpppscr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TssoR {
+            bits: u8,
+        }
+        impl TssoR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsttrR {
+            bits: u8,
+        }
+        impl TsttrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - TSSO" ]
+            # [ inline ( always ) ]
+            pub fn tsso(&self) -> TssoR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TssoR { bits }
+            }
+            # [ doc = "Bit 1 - TSTTR" ]
+            # [ inline ( always ) ]
+            pub fn tsttr(&self) -> TsttrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsttrR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Ethernet: Precision time protocol" ]
+pub struct EthernetPtp {
+    register_block: ethernet_ptp::RegisterBlock,
+}
+impl Deref for EthernetPtp {
+    type Target = ethernet_ptp::RegisterBlock;
+    fn deref(&self) -> &ethernet_ptp::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Ethernet: DMA controller operation" ]
+pub const ETHERNET_DMA: Peripheral<EthernetDma> =
+    unsafe { Peripheral::new(1073909760) };
+# [ doc = "Ethernet: DMA controller operation" ]
+pub mod ethernet_dma {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Ethernet DMA bus mode register" ]
+        pub dmabmr: Dmabmr,
+        # [ doc = "0x04 - Ethernet DMA transmit poll demand register" ]
+        pub dmatpdr: Dmatpdr,
+        # [ doc = "0x08 - EHERNET DMA receive poll demand register" ]
+        pub dmarpdr: Dmarpdr,
+        # [ doc = "0x0c - Ethernet DMA receive descriptor list address register" ]
+        pub dmardlar: Dmardlar,
+        # [ doc = "0x10 - Ethernet DMA transmit descriptor list address register" ]
+        pub dmatdlar: Dmatdlar,
+        # [ doc = "0x14 - Ethernet DMA status register" ]
+        pub dmasr: Dmasr,
+        # [ doc = "0x18 - Ethernet DMA operation mode register" ]
+        pub dmaomr: Dmaomr,
+        # [ doc = "0x1c - Ethernet DMA interrupt enable register" ]
+        pub dmaier: Dmaier,
+        # [ doc = "0x20 - Ethernet DMA missed frame and buffer overflow counter register" ]
+        pub dmamfbocr: Dmamfbocr,
+        # [ doc = "0x24 - Ethernet DMA receive status watchdog timer register" ]
+        pub dmarswtr: Dmarswtr,
+        _reserved0: [u8; 32usize],
+        # [ doc = "0x48 - Ethernet DMA current host transmit descriptor register" ]
+        pub dmachtdr: Dmachtdr,
+        # [ doc = "0x4c - Ethernet DMA current host receive descriptor register" ]
+        pub dmachrdr: Dmachrdr,
+        # [ doc = "0x50 - Ethernet DMA current host transmit buffer address register" ]
+        pub dmachtbar: Dmachtbar,
+        # [ doc = "0x54 - Ethernet DMA current host receive buffer address register" ]
+        pub dmachrbar: Dmachrbar,
+    }
+    # [ doc = "Ethernet DMA bus mode register" ]
+    pub struct Dmabmr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA bus mode register" ]
+    pub mod dmabmr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmabmr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrR {
+            bits: u8,
+        }
+        impl SrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DaR {
+            bits: u8,
+        }
+        impl DaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DslR {
+            bits: u8,
+        }
+        impl DslR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EdfeR {
+            bits: u8,
+        }
+        impl EdfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PblR {
+            bits: u8,
+        }
+        impl PblR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtprR {
+            bits: u8,
+        }
+        impl RtprR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FbR {
+            bits: u8,
+        }
+        impl FbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RdpR {
+            bits: u8,
+        }
+        impl RdpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UspR {
+            bits: u8,
+        }
+        impl UspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FpmR {
+            bits: u8,
+        }
+        impl FpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AabR {
+            bits: u8,
+        }
+        impl AabR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MbR {
+            bits: u8,
+        }
+        impl MbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DslW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DslW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EdfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EdfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PblW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PblW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtprW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtprW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RdpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RdpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AabW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AabW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sr(&self) -> SrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn da(&self) -> DaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DaR { bits }
+            }
+            # [ doc = "Bits 2:6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn dsl(&self) -> DslR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DslR { bits }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn edfe(&self) -> EdfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EdfeR { bits }
+            }
+            # [ doc = "Bits 8:13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pbl(&self) -> PblR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PblR { bits }
+            }
+            # [ doc = "Bits 14:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rtpr(&self) -> RtprR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtprR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fb(&self) -> FbR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FbR { bits }
+            }
+            # [ doc = "Bits 17:22 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rdp(&self) -> RdpR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RdpR { bits }
+            }
+            # [ doc = "Bit 23 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn usp(&self) -> UspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UspR { bits }
+            }
+            # [ doc = "Bit 24 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fpm(&self) -> FpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FpmR { bits }
+            }
+            # [ doc = "Bit 25 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn aab(&self) -> AabR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AabR { bits }
+            }
+            # [ doc = "Bit 26 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mb(&self) -> MbR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MbR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 8449 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn sr(&mut self) -> _SrW {
+                _SrW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn da(&mut self) -> _DaW {
+                _DaW { w: self }
+            }
+            # [ doc = "Bits 2:6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn dsl(&mut self) -> _DslW {
+                _DslW { w: self }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn edfe(&mut self) -> _EdfeW {
+                _EdfeW { w: self }
+            }
+            # [ doc = "Bits 8:13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pbl(&mut self) -> _PblW {
+                _PblW { w: self }
+            }
+            # [ doc = "Bits 14:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rtpr(&mut self) -> _RtprW {
+                _RtprW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fb(&mut self) -> _FbW {
+                _FbW { w: self }
+            }
+            # [ doc = "Bits 17:22 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rdp(&mut self) -> _RdpW {
+                _RdpW { w: self }
+            }
+            # [ doc = "Bit 23 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn usp(&mut self) -> _UspW {
+                _UspW { w: self }
+            }
+            # [ doc = "Bit 24 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fpm(&mut self) -> _FpmW {
+                _FpmW { w: self }
+            }
+            # [ doc = "Bit 25 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn aab(&mut self) -> _AabW {
+                _AabW { w: self }
+            }
+            # [ doc = "Bit 26 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mb(&mut self) -> _MbW {
+                _MbW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA transmit poll demand register" ]
+    pub struct Dmatpdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA transmit poll demand register" ]
+    pub mod dmatpdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmatpdr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TpdR {
+            bits: u32,
+        }
+        impl TpdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TpdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TpdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpd(&self) -> TpdR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                TpdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpd(&mut self) -> _TpdW {
+                _TpdW { w: self }
+            }
+        }
+    }
+    # [ doc = "EHERNET DMA receive poll demand register" ]
+    pub struct Dmarpdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "EHERNET DMA receive poll demand register" ]
+    pub mod dmarpdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmarpdr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RpdR {
+            bits: u32,
+        }
+        impl RpdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RpdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RpdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - RPD" ]
+            # [ inline ( always ) ]
+            pub fn rpd(&self) -> RpdR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                RpdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - RPD" ]
+            # [ inline ( always ) ]
+            pub fn rpd(&mut self) -> _RpdW {
+                _RpdW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA receive descriptor list address register" ]
+    pub struct Dmardlar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA receive descriptor list address register" ]
+    pub mod dmardlar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmardlar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrlR {
+            bits: u32,
+        }
+        impl SrlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn srl(&self) -> SrlR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                SrlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn srl(&mut self) -> _SrlW {
+                _SrlW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA transmit descriptor list address register" ]
+    pub struct Dmatdlar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA transmit descriptor list address register" ]
+    pub mod dmatdlar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmatdlar {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StlR {
+            bits: u32,
+        }
+        impl StlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stl(&self) -> StlR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                StlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn stl(&mut self) -> _StlW {
+                _StlW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA status register" ]
+    pub struct Dmasr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA status register" ]
+    pub mod dmasr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmasr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsR {
+            bits: u8,
+        }
+        impl TsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TpssR {
+            bits: u8,
+        }
+        impl TpssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TbusR {
+            bits: u8,
+        }
+        impl TbusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TjtsR {
+            bits: u8,
+        }
+        impl TjtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RosR {
+            bits: u8,
+        }
+        impl RosR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TusR {
+            bits: u8,
+        }
+        impl TusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RsR {
+            bits: u8,
+        }
+        impl RsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RbusR {
+            bits: u8,
+        }
+        impl RbusR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RpssR {
+            bits: u8,
+        }
+        impl RpssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwtsR {
+            bits: u8,
+        }
+        impl PwtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtsR {
+            bits: u8,
+        }
+        impl EtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FbesR {
+            bits: u8,
+        }
+        impl FbesR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErsR {
+            bits: u8,
+        }
+        impl ErsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AisR {
+            bits: u8,
+        }
+        impl AisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NisR {
+            bits: u8,
+        }
+        impl NisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RpsR {
+            bits: u8,
+        }
+        impl RpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TpsR {
+            bits: u8,
+        }
+        impl TpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EbsR {
+            bits: u8,
+        }
+        impl EbsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmcsR {
+            bits: u8,
+        }
+        impl MmcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PmtsR {
+            bits: u8,
+        }
+        impl PmtsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TstsR {
+            bits: u8,
+        }
+        impl TstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TpssW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TpssW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TbusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TbusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TjtsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TjtsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RosW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RosW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RbusW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RbusW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RpssW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RpssW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwtsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwtsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FbesW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FbesW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ts(&self) -> TsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpss(&self) -> TpssR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TpssR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tbus(&self) -> TbusR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TbusR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tjts(&self) -> TjtsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TjtsR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ros(&self) -> RosR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RosR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tus(&self) -> TusR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TusR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rs(&self) -> RsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RsR { bits }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rbus(&self) -> RbusR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RbusR { bits }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rpss(&self) -> RpssR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RpssR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pwts(&self) -> PwtsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwtsR { bits }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ets(&self) -> EtsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtsR { bits }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fbes(&self) -> FbesR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FbesR { bits }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ers(&self) -> ErsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErsR { bits }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ais(&self) -> AisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AisR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn nis(&self) -> NisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NisR { bits }
+            }
+            # [ doc = "Bits 17:19 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rps(&self) -> RpsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RpsR { bits }
+            }
+            # [ doc = "Bits 20:22 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tps(&self) -> TpsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TpsR { bits }
+            }
+            # [ doc = "Bits 23:25 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ebs(&self) -> EbsR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EbsR { bits }
+            }
+            # [ doc = "Bit 27 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mmcs(&self) -> MmcsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmcsR { bits }
+            }
+            # [ doc = "Bit 28 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pmts(&self) -> PmtsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PmtsR { bits }
+            }
+            # [ doc = "Bit 29 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tsts(&self) -> TstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TstsR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ts(&mut self) -> _TsW {
+                _TsW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpss(&mut self) -> _TpssW {
+                _TpssW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tbus(&mut self) -> _TbusW {
+                _TbusW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tjts(&mut self) -> _TjtsW {
+                _TjtsW { w: self }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ros(&mut self) -> _RosW {
+                _RosW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tus(&mut self) -> _TusW {
+                _TusW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rs(&mut self) -> _RsW {
+                _RsW { w: self }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rbus(&mut self) -> _RbusW {
+                _RbusW { w: self }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rpss(&mut self) -> _RpssW {
+                _RpssW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn pwts(&mut self) -> _PwtsW {
+                _PwtsW { w: self }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ets(&mut self) -> _EtsW {
+                _EtsW { w: self }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fbes(&mut self) -> _FbesW {
+                _FbesW { w: self }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ers(&mut self) -> _ErsW {
+                _ErsW { w: self }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ais(&mut self) -> _AisW {
+                _AisW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn nis(&mut self) -> _NisW {
+                _NisW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA operation mode register" ]
+    pub struct Dmaomr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA operation mode register" ]
+    pub mod dmaomr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmaomr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrR {
+            bits: u8,
+        }
+        impl SrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OsfR {
+            bits: u8,
+        }
+        impl OsfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtcR {
+            bits: u8,
+        }
+        impl RtcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FugfR {
+            bits: u8,
+        }
+        impl FugfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FefR {
+            bits: u8,
+        }
+        impl FefR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StR {
+            bits: u8,
+        }
+        impl StR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TtcR {
+            bits: u8,
+        }
+        impl TtcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FtfR {
+            bits: u8,
+        }
+        impl FtfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsfR {
+            bits: u8,
+        }
+        impl TsfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DfrfR {
+            bits: u8,
+        }
+        impl DfrfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RsfR {
+            bits: u8,
+        }
+        impl RsfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DtcefdR {
+            bits: u8,
+        }
+        impl DtcefdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OsfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OsfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FugfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FugfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FefW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FefW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TtcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TtcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FtfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FtfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DfrfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DfrfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RsfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RsfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DtcefdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DtcefdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - SR" ]
+            # [ inline ( always ) ]
+            pub fn sr(&self) -> SrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrR { bits }
+            }
+            # [ doc = "Bit 2 - OSF" ]
+            # [ inline ( always ) ]
+            pub fn osf(&self) -> OsfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OsfR { bits }
+            }
+            # [ doc = "Bits 3:4 - RTC" ]
+            # [ inline ( always ) ]
+            pub fn rtc(&self) -> RtcR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtcR { bits }
+            }
+            # [ doc = "Bit 6 - FUGF" ]
+            # [ inline ( always ) ]
+            pub fn fugf(&self) -> FugfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FugfR { bits }
+            }
+            # [ doc = "Bit 7 - FEF" ]
+            # [ inline ( always ) ]
+            pub fn fef(&self) -> FefR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FefR { bits }
+            }
+            # [ doc = "Bit 13 - ST" ]
+            # [ inline ( always ) ]
+            pub fn st(&self) -> StR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StR { bits }
+            }
+            # [ doc = "Bits 14:16 - TTC" ]
+            # [ inline ( always ) ]
+            pub fn ttc(&self) -> TtcR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TtcR { bits }
+            }
+            # [ doc = "Bit 20 - FTF" ]
+            # [ inline ( always ) ]
+            pub fn ftf(&self) -> FtfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FtfR { bits }
+            }
+            # [ doc = "Bit 21 - TSF" ]
+            # [ inline ( always ) ]
+            pub fn tsf(&self) -> TsfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsfR { bits }
+            }
+            # [ doc = "Bit 24 - DFRF" ]
+            # [ inline ( always ) ]
+            pub fn dfrf(&self) -> DfrfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DfrfR { bits }
+            }
+            # [ doc = "Bit 25 - RSF" ]
+            # [ inline ( always ) ]
+            pub fn rsf(&self) -> RsfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RsfR { bits }
+            }
+            # [ doc = "Bit 26 - DTCEFD" ]
+            # [ inline ( always ) ]
+            pub fn dtcefd(&self) -> DtcefdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DtcefdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - SR" ]
+            # [ inline ( always ) ]
+            pub fn sr(&mut self) -> _SrW {
+                _SrW { w: self }
+            }
+            # [ doc = "Bit 2 - OSF" ]
+            # [ inline ( always ) ]
+            pub fn osf(&mut self) -> _OsfW {
+                _OsfW { w: self }
+            }
+            # [ doc = "Bits 3:4 - RTC" ]
+            # [ inline ( always ) ]
+            pub fn rtc(&mut self) -> _RtcW {
+                _RtcW { w: self }
+            }
+            # [ doc = "Bit 6 - FUGF" ]
+            # [ inline ( always ) ]
+            pub fn fugf(&mut self) -> _FugfW {
+                _FugfW { w: self }
+            }
+            # [ doc = "Bit 7 - FEF" ]
+            # [ inline ( always ) ]
+            pub fn fef(&mut self) -> _FefW {
+                _FefW { w: self }
+            }
+            # [ doc = "Bit 13 - ST" ]
+            # [ inline ( always ) ]
+            pub fn st(&mut self) -> _StW {
+                _StW { w: self }
+            }
+            # [ doc = "Bits 14:16 - TTC" ]
+            # [ inline ( always ) ]
+            pub fn ttc(&mut self) -> _TtcW {
+                _TtcW { w: self }
+            }
+            # [ doc = "Bit 20 - FTF" ]
+            # [ inline ( always ) ]
+            pub fn ftf(&mut self) -> _FtfW {
+                _FtfW { w: self }
+            }
+            # [ doc = "Bit 21 - TSF" ]
+            # [ inline ( always ) ]
+            pub fn tsf(&mut self) -> _TsfW {
+                _TsfW { w: self }
+            }
+            # [ doc = "Bit 24 - DFRF" ]
+            # [ inline ( always ) ]
+            pub fn dfrf(&mut self) -> _DfrfW {
+                _DfrfW { w: self }
+            }
+            # [ doc = "Bit 25 - RSF" ]
+            # [ inline ( always ) ]
+            pub fn rsf(&mut self) -> _RsfW {
+                _RsfW { w: self }
+            }
+            # [ doc = "Bit 26 - DTCEFD" ]
+            # [ inline ( always ) ]
+            pub fn dtcefd(&mut self) -> _DtcefdW {
+                _DtcefdW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA interrupt enable register" ]
+    pub struct Dmaier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA interrupt enable register" ]
+    pub mod dmaier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmaier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TieR {
+            bits: u8,
+        }
+        impl TieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TpsieR {
+            bits: u8,
+        }
+        impl TpsieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TbuieR {
+            bits: u8,
+        }
+        impl TbuieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TjtieR {
+            bits: u8,
+        }
+        impl TjtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RoieR {
+            bits: u8,
+        }
+        impl RoieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TuieR {
+            bits: u8,
+        }
+        impl TuieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RieR {
+            bits: u8,
+        }
+        impl RieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RbuieR {
+            bits: u8,
+        }
+        impl RbuieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RpsieR {
+            bits: u8,
+        }
+        impl RpsieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwtieR {
+            bits: u8,
+        }
+        impl RwtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EtieR {
+            bits: u8,
+        }
+        impl EtieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FbeieR {
+            bits: u8,
+        }
+        impl FbeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErieR {
+            bits: u8,
+        }
+        impl ErieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AiseR {
+            bits: u8,
+        }
+        impl AiseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NiseR {
+            bits: u8,
+        }
+        impl NiseR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TpsieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TpsieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TbuieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TbuieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TjtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TjtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RoieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RoieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TuieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TuieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RbuieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RbuieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RpsieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RpsieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EtieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EtieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FbeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FbeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AiseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AiseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NiseW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NiseW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tie(&self) -> TieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TieR { bits }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpsie(&self) -> TpsieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TpsieR { bits }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tbuie(&self) -> TbuieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TbuieR { bits }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tjtie(&self) -> TjtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TjtieR { bits }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn roie(&self) -> RoieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RoieR { bits }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tuie(&self) -> TuieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TuieR { bits }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rie(&self) -> RieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RieR { bits }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rbuie(&self) -> RbuieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RbuieR { bits }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rpsie(&self) -> RpsieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RpsieR { bits }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rwtie(&self) -> RwtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwtieR { bits }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn etie(&self) -> EtieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EtieR { bits }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fbeie(&self) -> FbeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FbeieR { bits }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn erie(&self) -> ErieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErieR { bits }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn aise(&self) -> AiseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AiseR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn nise(&self) -> NiseR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NiseR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tie(&mut self) -> _TieW {
+                _TieW { w: self }
+            }
+            # [ doc = "Bit 1 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tpsie(&mut self) -> _TpsieW {
+                _TpsieW { w: self }
+            }
+            # [ doc = "Bit 2 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tbuie(&mut self) -> _TbuieW {
+                _TbuieW { w: self }
+            }
+            # [ doc = "Bit 3 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tjtie(&mut self) -> _TjtieW {
+                _TjtieW { w: self }
+            }
+            # [ doc = "Bit 4 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn roie(&mut self) -> _RoieW {
+                _RoieW { w: self }
+            }
+            # [ doc = "Bit 5 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn tuie(&mut self) -> _TuieW {
+                _TuieW { w: self }
+            }
+            # [ doc = "Bit 6 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rie(&mut self) -> _RieW {
+                _RieW { w: self }
+            }
+            # [ doc = "Bit 7 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rbuie(&mut self) -> _RbuieW {
+                _RbuieW { w: self }
+            }
+            # [ doc = "Bit 8 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rpsie(&mut self) -> _RpsieW {
+                _RpsieW { w: self }
+            }
+            # [ doc = "Bit 9 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn rwtie(&mut self) -> _RwtieW {
+                _RwtieW { w: self }
+            }
+            # [ doc = "Bit 10 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn etie(&mut self) -> _EtieW {
+                _EtieW { w: self }
+            }
+            # [ doc = "Bit 13 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn fbeie(&mut self) -> _FbeieW {
+                _FbeieW { w: self }
+            }
+            # [ doc = "Bit 14 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn erie(&mut self) -> _ErieW {
+                _ErieW { w: self }
+            }
+            # [ doc = "Bit 15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn aise(&mut self) -> _AiseW {
+                _AiseW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn nise(&mut self) -> _NiseW {
+                _NiseW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA missed frame and buffer overflow counter register" ]
+    pub struct Dmamfbocr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA missed frame and buffer overflow counter register" ]
+    pub mod dmamfbocr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmamfbocr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MfcR {
+            bits: u16,
+        }
+        impl MfcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OmfcR {
+            bits: u8,
+        }
+        impl OmfcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MfaR {
+            bits: u16,
+        }
+        impl MfaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OfocR {
+            bits: u8,
+        }
+        impl OfocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MfcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MfcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OmfcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OmfcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MfaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MfaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OfocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OfocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mfc(&self) -> MfcR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MfcR { bits }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn omfc(&self) -> OmfcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OmfcR { bits }
+            }
+            # [ doc = "Bits 17:27 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mfa(&self) -> MfaR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MfaR { bits }
+            }
+            # [ doc = "Bit 28 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ofoc(&self) -> OfocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OfocR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mfc(&mut self) -> _MfcW {
+                _MfcW { w: self }
+            }
+            # [ doc = "Bit 16 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn omfc(&mut self) -> _OmfcW {
+                _OmfcW { w: self }
+            }
+            # [ doc = "Bits 17:27 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn mfa(&mut self) -> _MfaW {
+                _MfaW { w: self }
+            }
+            # [ doc = "Bit 28 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn ofoc(&mut self) -> _OfocW {
+                _OfocW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA receive status watchdog timer register" ]
+    pub struct Dmarswtr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA receive status watchdog timer register" ]
+    pub mod dmarswtr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dmarswtr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RswtcR {
+            bits: u8,
+        }
+        impl RswtcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RswtcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RswtcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - RSWTC" ]
+            # [ inline ( always ) ]
+            pub fn rswtc(&self) -> RswtcR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RswtcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - RSWTC" ]
+            # [ inline ( always ) ]
+            pub fn rswtc(&mut self) -> _RswtcW {
+                _RswtcW { w: self }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA current host transmit descriptor register" ]
+    pub struct Dmachtdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA current host transmit descriptor register" ]
+    pub mod dmachtdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dmachtdr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtdapR {
+            bits: u32,
+        }
+        impl HtdapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - HTDAP" ]
+            # [ inline ( always ) ]
+            pub fn htdap(&self) -> HtdapR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HtdapR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA current host receive descriptor register" ]
+    pub struct Dmachrdr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA current host receive descriptor register" ]
+    pub mod dmachrdr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dmachrdr {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HrdapR {
+            bits: u32,
+        }
+        impl HrdapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - HRDAP" ]
+            # [ inline ( always ) ]
+            pub fn hrdap(&self) -> HrdapR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HrdapR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA current host transmit buffer address register" ]
+    pub struct Dmachtbar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA current host transmit buffer address register" ]
+    pub mod dmachtbar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dmachtbar {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HtbapR {
+            bits: u32,
+        }
+        impl HtbapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn htbap(&self) -> HtbapR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HtbapR { bits }
+            }
+        }
+    }
+    # [ doc = "Ethernet DMA current host receive buffer address register" ]
+    pub struct Dmachrbar {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Ethernet DMA current host receive buffer address register" ]
+    pub mod dmachrbar {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dmachrbar {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HrbapR {
+            bits: u32,
+        }
+        impl HrbapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - no description available" ]
+            # [ inline ( always ) ]
+            pub fn hrbap(&self) -> HrbapR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                HrbapR { bits }
+            }
+        }
+    }
+}
+# [ doc = "Ethernet: DMA controller operation" ]
+pub struct EthernetDma {
+    register_block: ethernet_dma::RegisterBlock,
+}
+impl Deref for EthernetDma {
+    type Target = ethernet_dma::RegisterBlock;
+    fn deref(&self) -> &ethernet_dma::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Cryptographic processor" ]
+pub const CRC: Peripheral<Crc> = unsafe { Peripheral::new(1073885184) };
+# [ doc = "Cryptographic processor" ]
+pub mod crc {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Data register" ]
+        pub dr: Dr,
+        # [ doc = "0x04 - Independent Data register" ]
+        pub idr: Idr,
+        # [ doc = "0x08 - Control register" ]
+        pub cr: Cr,
+    }
+    # [ doc = "Data register" ]
+    pub struct Dr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Data register" ]
+    pub mod dr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DrR {
+            bits: u32,
+        }
+        impl DrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Data Register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&self) -> DrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4294967295 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Data Register" ]
+            # [ inline ( always ) ]
+            pub fn dr(&mut self) -> _DrW {
+                _DrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Independent Data register" ]
+    pub struct Idr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Independent Data register" ]
+    pub mod idr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Idr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdrR {
+            bits: u8,
+        }
+        impl IdrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:7 - Independent Data register" ]
+            # [ inline ( always ) ]
+            pub fn idr(&self) -> IdrR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:7 - Independent Data register" ]
+            # [ inline ( always ) ]
+            pub fn idr(&mut self) -> _IdrW {
+                _IdrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register" ]
+    pub mod cr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Control regidter" ]
+            # [ inline ( always ) ]
+            pub fn cr(&mut self) -> _CrW {
+                _CrW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Cryptographic processor" ]
+pub struct Crc {
+    register_block: crc::RegisterBlock,
+}
+impl Deref for Crc {
+    type Target = crc::RegisterBlock;
+    fn deref(&self) -> &crc::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub const OTG_FS_GLOBAL: Peripheral<OtgFsGlobal> =
+    unsafe { Peripheral::new(1342177280) };
+# [ doc = "USB on the go full speed" ]
+pub mod otg_fs_global {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_FS control and status register (OTG_FS_GOTGCTL)" ]
+        pub fs_gotgctl: FsGotgctl,
+        # [ doc = "0x04 - OTG_FS interrupt register (OTG_FS_GOTGINT)" ]
+        pub fs_gotgint: FsGotgint,
+        # [ doc = "0x08 - OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ]
+        pub fs_gahbcfg: FsGahbcfg,
+        # [ doc = "0x0c - OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ]
+        pub fs_gusbcfg: FsGusbcfg,
+        # [ doc = "0x10 - OTG_FS reset register (OTG_FS_GRSTCTL)" ]
+        pub fs_grstctl: FsGrstctl,
+        # [ doc = "0x14 - OTG_FS core interrupt register (OTG_FS_GINTSTS)" ]
+        pub fs_gintsts: FsGintsts,
+        # [ doc = "0x18 - OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ]
+        pub fs_gintmsk: FsGintmsk,
+        # [ doc = "0x1c - OTG_FS Receive status debug read(Device mode)" ]
+        pub fs_grxstsr_device: FsGrxstsrDevice,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x24 - OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ]
+        pub fs_grxfsiz: FsGrxfsiz,
+        # [ doc = "0x28 - OTG_FS non-periodic transmit FIFO size register (Device mode)" ]
+        pub fs_gnptxfsiz_device: FsGnptxfsizDevice,
+        # [ doc = "0x2c - OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ]
+        pub fs_gnptxsts: FsGnptxsts,
+        _reserved1: [u8; 8usize],
+        # [ doc = "0x38 - OTG_FS general core configuration register (OTG_FS_GCCFG)" ]
+        pub fs_gccfg: FsGccfg,
+        # [ doc = "0x3c - core ID register" ]
+        pub fs_cid: FsCid,
+        _reserved2: [u8; 192usize],
+        # [ doc = "0x100 - OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ]
+        pub fs_hptxfsiz: FsHptxfsiz,
+        # [ doc = "0x104 - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ]
+        pub fs_dieptxf1: FsDieptxf1,
+        # [ doc = "0x108 - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ]
+        pub fs_dieptxf2: FsDieptxf2,
+        # [ doc = "0x10c - OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ]
+        pub fs_dieptxf3: FsDieptxf3,
+    }
+    # [ doc = "OTG_FS control and status register (OTG_FS_GOTGCTL)" ]
+    pub struct FsGotgctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS control and status register (OTG_FS_GOTGCTL)" ]
+    pub mod fs_gotgctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGotgctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqscsR {
+            bits: u8,
+        }
+        impl SrqscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqR {
+            bits: u8,
+        }
+        impl SrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HngscsR {
+            bits: u8,
+        }
+        impl HngscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnprqR {
+            bits: u8,
+        }
+        impl HnprqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HshnpenR {
+            bits: u8,
+        }
+        impl HshnpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DhnpenR {
+            bits: u8,
+        }
+        impl DhnpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidstsR {
+            bits: u8,
+        }
+        impl CidstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbctR {
+            bits: u8,
+        }
+        impl DbctR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsvldR {
+            bits: u8,
+        }
+        impl AsvldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BsvldR {
+            bits: u8,
+        }
+        impl BsvldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnprqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnprqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HshnpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HshnpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DhnpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DhnpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Session request success" ]
+            # [ inline ( always ) ]
+            pub fn srqscs(&self) -> SrqscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqscsR { bits }
+            }
+            # [ doc = "Bit 1 - Session request" ]
+            # [ inline ( always ) ]
+            pub fn srq(&self) -> SrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqR { bits }
+            }
+            # [ doc = "Bit 8 - Host negotiation success" ]
+            # [ inline ( always ) ]
+            pub fn hngscs(&self) -> HngscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HngscsR { bits }
+            }
+            # [ doc = "Bit 9 - HNP request" ]
+            # [ inline ( always ) ]
+            pub fn hnprq(&self) -> HnprqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnprqR { bits }
+            }
+            # [ doc = "Bit 10 - Host set HNP enable" ]
+            # [ inline ( always ) ]
+            pub fn hshnpen(&self) -> HshnpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HshnpenR { bits }
+            }
+            # [ doc = "Bit 11 - Device HNP enabled" ]
+            # [ inline ( always ) ]
+            pub fn dhnpen(&self) -> DhnpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DhnpenR { bits }
+            }
+            # [ doc = "Bit 16 - Connector ID status" ]
+            # [ inline ( always ) ]
+            pub fn cidsts(&self) -> CidstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidstsR { bits }
+            }
+            # [ doc = "Bit 17 - Long/short debounce time" ]
+            # [ inline ( always ) ]
+            pub fn dbct(&self) -> DbctR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbctR { bits }
+            }
+            # [ doc = "Bit 18 - A-session valid" ]
+            # [ inline ( always ) ]
+            pub fn asvld(&self) -> AsvldR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsvldR { bits }
+            }
+            # [ doc = "Bit 19 - B-session valid" ]
+            # [ inline ( always ) ]
+            pub fn bsvld(&self) -> BsvldR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BsvldR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2048 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Session request" ]
+            # [ inline ( always ) ]
+            pub fn srq(&mut self) -> _SrqW {
+                _SrqW { w: self }
+            }
+            # [ doc = "Bit 9 - HNP request" ]
+            # [ inline ( always ) ]
+            pub fn hnprq(&mut self) -> _HnprqW {
+                _HnprqW { w: self }
+            }
+            # [ doc = "Bit 10 - Host set HNP enable" ]
+            # [ inline ( always ) ]
+            pub fn hshnpen(&mut self) -> _HshnpenW {
+                _HshnpenW { w: self }
+            }
+            # [ doc = "Bit 11 - Device HNP enabled" ]
+            # [ inline ( always ) ]
+            pub fn dhnpen(&mut self) -> _DhnpenW {
+                _DhnpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS interrupt register (OTG_FS_GOTGINT)" ]
+    pub struct FsGotgint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS interrupt register (OTG_FS_GOTGINT)" ]
+    pub mod fs_gotgint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGotgint {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SedetR {
+            bits: u8,
+        }
+        impl SedetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrsschgR {
+            bits: u8,
+        }
+        impl SrsschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnsschgR {
+            bits: u8,
+        }
+        impl HnsschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HngdetR {
+            bits: u8,
+        }
+        impl HngdetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AdtochgR {
+            bits: u8,
+        }
+        impl AdtochgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbcdneR {
+            bits: u8,
+        }
+        impl DbcdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SedetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SedetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrsschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrsschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnsschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnsschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HngdetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HngdetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AdtochgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AdtochgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbcdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbcdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 2 - Session end detected" ]
+            # [ inline ( always ) ]
+            pub fn sedet(&self) -> SedetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SedetR { bits }
+            }
+            # [ doc = "Bit 8 - Session request success status change" ]
+            # [ inline ( always ) ]
+            pub fn srsschg(&self) -> SrsschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrsschgR { bits }
+            }
+            # [ doc = "Bit 9 - Host negotiation success status change" ]
+            # [ inline ( always ) ]
+            pub fn hnsschg(&self) -> HnsschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnsschgR { bits }
+            }
+            # [ doc = "Bit 17 - Host negotiation detected" ]
+            # [ inline ( always ) ]
+            pub fn hngdet(&self) -> HngdetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HngdetR { bits }
+            }
+            # [ doc = "Bit 18 - A-device timeout change" ]
+            # [ inline ( always ) ]
+            pub fn adtochg(&self) -> AdtochgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AdtochgR { bits }
+            }
+            # [ doc = "Bit 19 - Debounce done" ]
+            # [ inline ( always ) ]
+            pub fn dbcdne(&self) -> DbcdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbcdneR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 2 - Session end detected" ]
+            # [ inline ( always ) ]
+            pub fn sedet(&mut self) -> _SedetW {
+                _SedetW { w: self }
+            }
+            # [ doc = "Bit 8 - Session request success status change" ]
+            # [ inline ( always ) ]
+            pub fn srsschg(&mut self) -> _SrsschgW {
+                _SrsschgW { w: self }
+            }
+            # [ doc = "Bit 9 - Host negotiation success status change" ]
+            # [ inline ( always ) ]
+            pub fn hnsschg(&mut self) -> _HnsschgW {
+                _HnsschgW { w: self }
+            }
+            # [ doc = "Bit 17 - Host negotiation detected" ]
+            # [ inline ( always ) ]
+            pub fn hngdet(&mut self) -> _HngdetW {
+                _HngdetW { w: self }
+            }
+            # [ doc = "Bit 18 - A-device timeout change" ]
+            # [ inline ( always ) ]
+            pub fn adtochg(&mut self) -> _AdtochgW {
+                _AdtochgW { w: self }
+            }
+            # [ doc = "Bit 19 - Debounce done" ]
+            # [ inline ( always ) ]
+            pub fn dbcdne(&mut self) -> _DbcdneW {
+                _DbcdneW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ]
+    pub struct FsGahbcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS AHB configuration register (OTG_FS_GAHBCFG)" ]
+    pub mod fs_gahbcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGahbcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GintR {
+            bits: u8,
+        }
+        impl GintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfelvlR {
+            bits: u8,
+        }
+        impl TxfelvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfelvlR {
+            bits: u8,
+        }
+        impl PtxfelvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfelvlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfelvlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfelvlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfelvlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Global interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn gint(&self) -> GintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GintR { bits }
+            }
+            # [ doc = "Bit 7 - TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn txfelvl(&self) -> TxfelvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfelvlR { bits }
+            }
+            # [ doc = "Bit 8 - Periodic TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn ptxfelvl(&self) -> PtxfelvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfelvlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Global interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn gint(&mut self) -> _GintW {
+                _GintW { w: self }
+            }
+            # [ doc = "Bit 7 - TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn txfelvl(&mut self) -> _TxfelvlW {
+                _TxfelvlW { w: self }
+            }
+            # [ doc = "Bit 8 - Periodic TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn ptxfelvl(&mut self) -> _PtxfelvlW {
+                _PtxfelvlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ]
+    pub struct FsGusbcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS USB configuration register (OTG_FS_GUSBCFG)" ]
+    pub mod fs_gusbcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGusbcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocalR {
+            bits: u8,
+        }
+        impl TocalR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrpcapR {
+            bits: u8,
+        }
+        impl SrpcapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnpcapR {
+            bits: u8,
+        }
+        impl HnpcapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TrdtR {
+            bits: u8,
+        }
+        impl TrdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FhmodR {
+            bits: u8,
+        }
+        impl FhmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FdmodR {
+            bits: u8,
+        }
+        impl FdmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtxpktR {
+            bits: u8,
+        }
+        impl CtxpktR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocalW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocalW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PhyselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PhyselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrpcapW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrpcapW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnpcapW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnpcapW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TrdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TrdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FhmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FhmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FdmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FdmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtxpktW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtxpktW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:2 - FS timeout calibration" ]
+            # [ inline ( always ) ]
+            pub fn tocal(&self) -> TocalR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocalR { bits }
+            }
+            # [ doc = "Bit 8 - SRP-capable" ]
+            # [ inline ( always ) ]
+            pub fn srpcap(&self) -> SrpcapR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrpcapR { bits }
+            }
+            # [ doc = "Bit 9 - HNP-capable" ]
+            # [ inline ( always ) ]
+            pub fn hnpcap(&self) -> HnpcapR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnpcapR { bits }
+            }
+            # [ doc = "Bits 10:13 - USB turnaround time" ]
+            # [ inline ( always ) ]
+            pub fn trdt(&self) -> TrdtR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TrdtR { bits }
+            }
+            # [ doc = "Bit 29 - Force host mode" ]
+            # [ inline ( always ) ]
+            pub fn fhmod(&self) -> FhmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FhmodR { bits }
+            }
+            # [ doc = "Bit 30 - Force device mode" ]
+            # [ inline ( always ) ]
+            pub fn fdmod(&self) -> FdmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FdmodR { bits }
+            }
+            # [ doc = "Bit 31 - Corrupt Tx packet" ]
+            # [ inline ( always ) ]
+            pub fn ctxpkt(&self) -> CtxpktR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtxpktR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2560 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:2 - FS timeout calibration" ]
+            # [ inline ( always ) ]
+            pub fn tocal(&mut self) -> _TocalW {
+                _TocalW { w: self }
+            }
+            # [ doc = "Bit 6 - Full Speed serial transceiver select" ]
+            # [ inline ( always ) ]
+            pub fn physel(&mut self) -> _PhyselW {
+                _PhyselW { w: self }
+            }
+            # [ doc = "Bit 8 - SRP-capable" ]
+            # [ inline ( always ) ]
+            pub fn srpcap(&mut self) -> _SrpcapW {
+                _SrpcapW { w: self }
+            }
+            # [ doc = "Bit 9 - HNP-capable" ]
+            # [ inline ( always ) ]
+            pub fn hnpcap(&mut self) -> _HnpcapW {
+                _HnpcapW { w: self }
+            }
+            # [ doc = "Bits 10:13 - USB turnaround time" ]
+            # [ inline ( always ) ]
+            pub fn trdt(&mut self) -> _TrdtW {
+                _TrdtW { w: self }
+            }
+            # [ doc = "Bit 29 - Force host mode" ]
+            # [ inline ( always ) ]
+            pub fn fhmod(&mut self) -> _FhmodW {
+                _FhmodW { w: self }
+            }
+            # [ doc = "Bit 30 - Force device mode" ]
+            # [ inline ( always ) ]
+            pub fn fdmod(&mut self) -> _FdmodW {
+                _FdmodW { w: self }
+            }
+            # [ doc = "Bit 31 - Corrupt Tx packet" ]
+            # [ inline ( always ) ]
+            pub fn ctxpkt(&mut self) -> _CtxpktW {
+                _CtxpktW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS reset register (OTG_FS_GRSTCTL)" ]
+    pub struct FsGrstctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS reset register (OTG_FS_GRSTCTL)" ]
+    pub mod fs_grstctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGrstctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsrstR {
+            bits: u8,
+        }
+        impl CsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsrstR {
+            bits: u8,
+        }
+        impl HsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FcrstR {
+            bits: u8,
+        }
+        impl FcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfflshR {
+            bits: u8,
+        }
+        impl RxfflshR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfflshR {
+            bits: u8,
+        }
+        impl TxfflshR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhbidlR {
+            bits: u8,
+        }
+        impl AhbidlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfflshW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfflshW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfflshW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfflshW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Core soft reset" ]
+            # [ inline ( always ) ]
+            pub fn csrst(&self) -> CsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsrstR { bits }
+            }
+            # [ doc = "Bit 1 - HCLK soft reset" ]
+            # [ inline ( always ) ]
+            pub fn hsrst(&self) -> HsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsrstR { bits }
+            }
+            # [ doc = "Bit 2 - Host frame counter reset" ]
+            # [ inline ( always ) ]
+            pub fn fcrst(&self) -> FcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FcrstR { bits }
+            }
+            # [ doc = "Bit 4 - RxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn rxfflsh(&self) -> RxfflshR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfflshR { bits }
+            }
+            # [ doc = "Bit 5 - TxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn txfflsh(&self) -> TxfflshR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfflshR { bits }
+            }
+            # [ doc = "Bits 6:10 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 31 - AHB master idle" ]
+            # [ inline ( always ) ]
+            pub fn ahbidl(&self) -> AhbidlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhbidlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 536870912 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Core soft reset" ]
+            # [ inline ( always ) ]
+            pub fn csrst(&mut self) -> _CsrstW {
+                _CsrstW { w: self }
+            }
+            # [ doc = "Bit 1 - HCLK soft reset" ]
+            # [ inline ( always ) ]
+            pub fn hsrst(&mut self) -> _HsrstW {
+                _HsrstW { w: self }
+            }
+            # [ doc = "Bit 2 - Host frame counter reset" ]
+            # [ inline ( always ) ]
+            pub fn fcrst(&mut self) -> _FcrstW {
+                _FcrstW { w: self }
+            }
+            # [ doc = "Bit 4 - RxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn rxfflsh(&mut self) -> _RxfflshW {
+                _RxfflshW { w: self }
+            }
+            # [ doc = "Bit 5 - TxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn txfflsh(&mut self) -> _TxfflshW {
+                _TxfflshW { w: self }
+            }
+            # [ doc = "Bits 6:10 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS core interrupt register (OTG_FS_GINTSTS)" ]
+    pub struct FsGintsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS core interrupt register (OTG_FS_GINTSTS)" ]
+    pub mod fs_gintsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGintsts {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmodR {
+            bits: u8,
+        }
+        impl CmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmisR {
+            bits: u8,
+        }
+        impl MmisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgintR {
+            bits: u8,
+        }
+        impl OtgintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofR {
+            bits: u8,
+        }
+        impl SofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxflvlR {
+            bits: u8,
+        }
+        impl RxflvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfeR {
+            bits: u8,
+        }
+        impl NptxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinakeffR {
+            bits: u8,
+        }
+        impl GinakeffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GoutnakeffR {
+            bits: u8,
+        }
+        impl GoutnakeffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EsuspR {
+            bits: u8,
+        }
+        impl EsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbsuspR {
+            bits: u8,
+        }
+        impl UsbsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbrstR {
+            bits: u8,
+        }
+        impl UsbrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumdneR {
+            bits: u8,
+        }
+        impl EnumdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IsoodrpR {
+            bits: u8,
+        }
+        impl IsoodrpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopfR {
+            bits: u8,
+        }
+        impl EopfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u8,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u8,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IisoixfrR {
+            bits: u8,
+        }
+        impl IisoixfrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IpxfrIncompisooutR {
+            bits: u8,
+        }
+        impl IpxfrIncompisooutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HprtintR {
+            bits: u8,
+        }
+        impl HprtintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HcintR {
+            bits: u8,
+        }
+        impl HcintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfeR {
+            bits: u8,
+        }
+        impl PtxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidschgR {
+            bits: u8,
+        }
+        impl CidschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscintR {
+            bits: u8,
+        }
+        impl DiscintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqintR {
+            bits: u8,
+        }
+        impl SrqintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WkupintR {
+            bits: u8,
+        }
+        impl WkupintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnumdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnumdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IsoodrpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IsoodrpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IisoixfrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IisoixfrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IpxfrIncompisooutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IpxfrIncompisooutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CidschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CidschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WkupintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WkupintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Current mode of operation" ]
+            # [ inline ( always ) ]
+            pub fn cmod(&self) -> CmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmodR { bits }
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt" ]
+            # [ inline ( always ) ]
+            pub fn mmis(&self) -> MmisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmisR { bits }
+            }
+            # [ doc = "Bit 2 - OTG interrupt" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&self) -> OtgintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgintR { bits }
+            }
+            # [ doc = "Bit 3 - Start of frame" ]
+            # [ inline ( always ) ]
+            pub fn sof(&self) -> SofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofR { bits }
+            }
+            # [ doc = "Bit 4 - RxFIFO non-empty" ]
+            # [ inline ( always ) ]
+            pub fn rxflvl(&self) -> RxflvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxflvlR { bits }
+            }
+            # [ doc = "Bit 5 - Non-periodic TxFIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn nptxfe(&self) -> NptxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxfeR { bits }
+            }
+            # [ doc = "Bit 6 - Global IN non-periodic NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn ginakeff(&self) -> GinakeffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinakeffR { bits }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn goutnakeff(&self) -> GoutnakeffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GoutnakeffR { bits }
+            }
+            # [ doc = "Bit 10 - Early suspend" ]
+            # [ inline ( always ) ]
+            pub fn esusp(&self) -> EsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EsuspR { bits }
+            }
+            # [ doc = "Bit 11 - USB suspend" ]
+            # [ inline ( always ) ]
+            pub fn usbsusp(&self) -> UsbsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbsuspR { bits }
+            }
+            # [ doc = "Bit 12 - USB reset" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&self) -> UsbrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbrstR { bits }
+            }
+            # [ doc = "Bit 13 - Enumeration done" ]
+            # [ inline ( always ) ]
+            pub fn enumdne(&self) -> EnumdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumdneR { bits }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ]
+            # [ inline ( always ) ]
+            pub fn isoodrp(&self) -> IsoodrpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IsoodrpR { bits }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt" ]
+            # [ inline ( always ) ]
+            pub fn eopf(&self) -> EopfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopfR { bits }
+            }
+            # [ doc = "Bit 18 - IN endpoint interrupt" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bit 19 - OUT endpoint interrupt" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OepintR { bits }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfr(&self) -> IisoixfrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IisoixfrR { bits }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer(Host mode)/Incomplete isochronous OUT transfer(Device mode)" ]
+            # [ inline ( always ) ]
+            pub fn ipxfr_incompisoout(&self) -> IpxfrIncompisooutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IpxfrIncompisooutR { bits }
+            }
+            # [ doc = "Bit 24 - Host port interrupt" ]
+            # [ inline ( always ) ]
+            pub fn hprtint(&self) -> HprtintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HprtintR { bits }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt" ]
+            # [ inline ( always ) ]
+            pub fn hcint(&self) -> HcintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HcintR { bits }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn ptxfe(&self) -> PtxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfeR { bits }
+            }
+            # [ doc = "Bit 28 - Connector ID status change" ]
+            # [ inline ( always ) ]
+            pub fn cidschg(&self) -> CidschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidschgR { bits }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn discint(&self) -> DiscintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscintR { bits }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn srqint(&self) -> SrqintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqintR { bits }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn wkupint(&self) -> WkupintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WkupintR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 67108896 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt" ]
+            # [ inline ( always ) ]
+            pub fn mmis(&mut self) -> _MmisW {
+                _MmisW { w: self }
+            }
+            # [ doc = "Bit 3 - Start of frame" ]
+            # [ inline ( always ) ]
+            pub fn sof(&mut self) -> _SofW {
+                _SofW { w: self }
+            }
+            # [ doc = "Bit 10 - Early suspend" ]
+            # [ inline ( always ) ]
+            pub fn esusp(&mut self) -> _EsuspW {
+                _EsuspW { w: self }
+            }
+            # [ doc = "Bit 11 - USB suspend" ]
+            # [ inline ( always ) ]
+            pub fn usbsusp(&mut self) -> _UsbsuspW {
+                _UsbsuspW { w: self }
+            }
+            # [ doc = "Bit 12 - USB reset" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&mut self) -> _UsbrstW {
+                _UsbrstW { w: self }
+            }
+            # [ doc = "Bit 13 - Enumeration done" ]
+            # [ inline ( always ) ]
+            pub fn enumdne(&mut self) -> _EnumdneW {
+                _EnumdneW { w: self }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ]
+            # [ inline ( always ) ]
+            pub fn isoodrp(&mut self) -> _IsoodrpW {
+                _IsoodrpW { w: self }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt" ]
+            # [ inline ( always ) ]
+            pub fn eopf(&mut self) -> _EopfW {
+                _EopfW { w: self }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfr(&mut self) -> _IisoixfrW {
+                _IisoixfrW { w: self }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer(Host mode)/Incomplete isochronous OUT transfer(Device mode)" ]
+            # [ inline ( always ) ]
+            pub fn ipxfr_incompisoout(&mut self) -> _IpxfrIncompisooutW {
+                _IpxfrIncompisooutW { w: self }
+            }
+            # [ doc = "Bit 28 - Connector ID status change" ]
+            # [ inline ( always ) ]
+            pub fn cidschg(&mut self) -> _CidschgW {
+                _CidschgW { w: self }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn discint(&mut self) -> _DiscintW {
+                _DiscintW { w: self }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn srqint(&mut self) -> _SrqintW {
+                _SrqintW { w: self }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn wkupint(&mut self) -> _WkupintW {
+                _WkupintW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ]
+    pub struct FsGintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS interrupt mask register (OTG_FS_GINTMSK)" ]
+    pub mod fs_gintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmismR {
+            bits: u8,
+        }
+        impl MmismR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgintR {
+            bits: u8,
+        }
+        impl OtgintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofmR {
+            bits: u8,
+        }
+        impl SofmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxflvlmR {
+            bits: u8,
+        }
+        impl RxflvlmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfemR {
+            bits: u8,
+        }
+        impl NptxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinakeffmR {
+            bits: u8,
+        }
+        impl GinakeffmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GonakeffmR {
+            bits: u8,
+        }
+        impl GonakeffmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EsuspmR {
+            bits: u8,
+        }
+        impl EsuspmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbsuspmR {
+            bits: u8,
+        }
+        impl UsbsuspmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbrstR {
+            bits: u8,
+        }
+        impl UsbrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumdnemR {
+            bits: u8,
+        }
+        impl EnumdnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IsoodrpmR {
+            bits: u8,
+        }
+        impl IsoodrpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopfmR {
+            bits: u8,
+        }
+        impl EopfmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpmismR {
+            bits: u8,
+        }
+        impl EpmismR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u8,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u8,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IisoixfrmR {
+            bits: u8,
+        }
+        impl IisoixfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IpxfrmIisooxfrmR {
+            bits: u8,
+        }
+        impl IpxfrmIisooxfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtimR {
+            bits: u8,
+        }
+        impl PrtimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HcimR {
+            bits: u8,
+        }
+        impl HcimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfemR {
+            bits: u8,
+        }
+        impl PtxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidschgmR {
+            bits: u8,
+        }
+        impl CidschgmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscintR {
+            bits: u8,
+        }
+        impl DiscintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqimR {
+            bits: u8,
+        }
+        impl SrqimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WuimR {
+            bits: u8,
+        }
+        impl WuimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmismW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmismW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtgintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtgintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxflvlmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxflvlmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GinakeffmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GinakeffmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GonakeffmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GonakeffmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EsuspmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EsuspmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbsuspmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbsuspmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnumdnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnumdnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IsoodrpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IsoodrpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopfmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopfmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpmismW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpmismW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IepintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IepintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OepintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OepintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IisoixfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IisoixfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IpxfrmIisooxfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IpxfrmIisooxfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HcimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HcimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CidschgmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CidschgmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WuimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WuimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn mmism(&self) -> MmismR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmismR { bits }
+            }
+            # [ doc = "Bit 2 - OTG interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&self) -> OtgintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgintR { bits }
+            }
+            # [ doc = "Bit 3 - Start of frame mask" ]
+            # [ inline ( always ) ]
+            pub fn sofm(&self) -> SofmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofmR { bits }
+            }
+            # [ doc = "Bit 4 - Receive FIFO non-empty mask" ]
+            # [ inline ( always ) ]
+            pub fn rxflvlm(&self) -> RxflvlmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxflvlmR { bits }
+            }
+            # [ doc = "Bit 5 - Non-periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn nptxfem(&self) -> NptxfemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxfemR { bits }
+            }
+            # [ doc = "Bit 6 - Global non-periodic IN NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn ginakeffm(&self) -> GinakeffmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinakeffmR { bits }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn gonakeffm(&self) -> GonakeffmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GonakeffmR { bits }
+            }
+            # [ doc = "Bit 10 - Early suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn esuspm(&self) -> EsuspmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EsuspmR { bits }
+            }
+            # [ doc = "Bit 11 - USB suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn usbsuspm(&self) -> UsbsuspmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbsuspmR { bits }
+            }
+            # [ doc = "Bit 12 - USB reset mask" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&self) -> UsbrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbrstR { bits }
+            }
+            # [ doc = "Bit 13 - Enumeration done mask" ]
+            # [ inline ( always ) ]
+            pub fn enumdnem(&self) -> EnumdnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumdnemR { bits }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn isoodrpm(&self) -> IsoodrpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IsoodrpmR { bits }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn eopfm(&self) -> EopfmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopfmR { bits }
+            }
+            # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epmism(&self) -> EpmismR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpmismR { bits }
+            }
+            # [ doc = "Bit 18 - IN endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bit 19 - OUT endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OepintR { bits }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfrm(&self) -> IisoixfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IisoixfrmR { bits }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer mask(Host mode)/Incomplete isochronous OUT transfer mask(Device mode)" ]
+            # [ inline ( always ) ]
+            pub fn ipxfrm_iisooxfrm(&self) -> IpxfrmIisooxfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IpxfrmIisooxfrmR { bits }
+            }
+            # [ doc = "Bit 24 - Host port interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn prtim(&self) -> PrtimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtimR { bits }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn hcim(&self) -> HcimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HcimR { bits }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ptxfem(&self) -> PtxfemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfemR { bits }
+            }
+            # [ doc = "Bit 28 - Connector ID status change mask" ]
+            # [ inline ( always ) ]
+            pub fn cidschgm(&self) -> CidschgmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidschgmR { bits }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn discint(&self) -> DiscintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscintR { bits }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn srqim(&self) -> SrqimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqimR { bits }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn wuim(&self) -> WuimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WuimR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn mmism(&mut self) -> _MmismW {
+                _MmismW { w: self }
+            }
+            # [ doc = "Bit 2 - OTG interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&mut self) -> _OtgintW {
+                _OtgintW { w: self }
+            }
+            # [ doc = "Bit 3 - Start of frame mask" ]
+            # [ inline ( always ) ]
+            pub fn sofm(&mut self) -> _SofmW {
+                _SofmW { w: self }
+            }
+            # [ doc = "Bit 4 - Receive FIFO non-empty mask" ]
+            # [ inline ( always ) ]
+            pub fn rxflvlm(&mut self) -> _RxflvlmW {
+                _RxflvlmW { w: self }
+            }
+            # [ doc = "Bit 5 - Non-periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn nptxfem(&mut self) -> _NptxfemW {
+                _NptxfemW { w: self }
+            }
+            # [ doc = "Bit 6 - Global non-periodic IN NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn ginakeffm(&mut self) -> _GinakeffmW {
+                _GinakeffmW { w: self }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn gonakeffm(&mut self) -> _GonakeffmW {
+                _GonakeffmW { w: self }
+            }
+            # [ doc = "Bit 10 - Early suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn esuspm(&mut self) -> _EsuspmW {
+                _EsuspmW { w: self }
+            }
+            # [ doc = "Bit 11 - USB suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn usbsuspm(&mut self) -> _UsbsuspmW {
+                _UsbsuspmW { w: self }
+            }
+            # [ doc = "Bit 12 - USB reset mask" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&mut self) -> _UsbrstW {
+                _UsbrstW { w: self }
+            }
+            # [ doc = "Bit 13 - Enumeration done mask" ]
+            # [ inline ( always ) ]
+            pub fn enumdnem(&mut self) -> _EnumdnemW {
+                _EnumdnemW { w: self }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn isoodrpm(&mut self) -> _IsoodrpmW {
+                _IsoodrpmW { w: self }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn eopfm(&mut self) -> _EopfmW {
+                _EopfmW { w: self }
+            }
+            # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epmism(&mut self) -> _EpmismW {
+                _EpmismW { w: self }
+            }
+            # [ doc = "Bit 18 - IN endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&mut self) -> _IepintW {
+                _IepintW { w: self }
+            }
+            # [ doc = "Bit 19 - OUT endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&mut self) -> _OepintW {
+                _OepintW { w: self }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfrm(&mut self) -> _IisoixfrmW {
+                _IisoixfrmW { w: self }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer mask(Host mode)/Incomplete isochronous OUT transfer mask(Device mode)" ]
+            # [ inline ( always ) ]
+            pub fn ipxfrm_iisooxfrm(&mut self) -> _IpxfrmIisooxfrmW {
+                _IpxfrmIisooxfrmW { w: self }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn hcim(&mut self) -> _HcimW {
+                _HcimW { w: self }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ptxfem(&mut self) -> _PtxfemW {
+                _PtxfemW { w: self }
+            }
+            # [ doc = "Bit 28 - Connector ID status change mask" ]
+            # [ inline ( always ) ]
+            pub fn cidschgm(&mut self) -> _CidschgmW {
+                _CidschgmW { w: self }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn discint(&mut self) -> _DiscintW {
+                _DiscintW { w: self }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn srqim(&mut self) -> _SrqimW {
+                _SrqimW { w: self }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn wuim(&mut self) -> _WuimW {
+                _WuimW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Receive status debug read(Device mode)" ]
+    pub struct FsGrxstsrDevice {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Receive status debug read(Device mode)" ]
+    pub mod fs_grxstsr_device {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsGrxstsrDevice {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmnumR {
+            bits: u8,
+        }
+        impl FrmnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+            # [ doc = "Bits 21:24 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frmnum(&self) -> FrmnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmnumR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Receive status debug read(Host mode)" ]
+    pub struct FsGrxstsrHost {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Receive status debug read(Host mode)" ]
+    pub mod fs_grxstsr_host {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsGrxstsrHost {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmnumR {
+            bits: u8,
+        }
+        impl FrmnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+            # [ doc = "Bits 21:24 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frmnum(&self) -> FrmnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmnumR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ]
+    pub struct FsGrxfsiz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Receive FIFO size register (OTG_FS_GRXFSIZ)" ]
+    pub mod fs_grxfsiz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGrxfsiz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfdR {
+            bits: u16,
+        }
+        impl RxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - RxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn rxfd(&self) -> RxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - RxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn rxfd(&mut self) -> _RxfdW {
+                _RxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO size register (Device mode)" ]
+    pub struct FsGnptxfsizDevice {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO size register (Device mode)" ]
+    pub mod fs_gnptxfsiz_device {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGnptxfsizDevice {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tx0fsaR {
+            bits: u16,
+        }
+        impl Tx0fsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tx0fdR {
+            bits: u16,
+        }
+        impl Tx0fdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tx0fsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tx0fsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tx0fdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tx0fdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn tx0fsa(&self) -> Tx0fsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Tx0fsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn tx0fd(&self) -> Tx0fdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Tx0fdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn tx0fsa(&mut self) -> _Tx0fsaW {
+                _Tx0fsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn tx0fd(&mut self) -> _Tx0fdW {
+                _Tx0fdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO size register (Host mode)" ]
+    pub struct FsGnptxfsizHost {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO size register (Host mode)" ]
+    pub mod fs_gnptxfsiz_host {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGnptxfsizHost {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfsaR {
+            bits: u16,
+        }
+        impl NptxfsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfdR {
+            bits: u16,
+        }
+        impl NptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Non-periodic transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsa(&self) -> NptxfsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Non-periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn nptxfd(&self) -> NptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Non-periodic transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsa(&mut self) -> _NptxfsaW {
+                _NptxfsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Non-periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn nptxfd(&mut self) -> _NptxfdW {
+                _NptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ]
+    pub struct FsGnptxsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS non-periodic transmit FIFO/queue status register (OTG_FS_GNPTXSTS)" ]
+    pub mod fs_gnptxsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsGnptxsts {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfsavR {
+            bits: u16,
+        }
+        impl NptxfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptqxsavR {
+            bits: u8,
+        }
+        impl NptqxsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxqtopR {
+            bits: u8,
+        }
+        impl NptxqtopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Non-periodic TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsav(&self) -> NptxfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfsavR { bits }
+            }
+            # [ doc = "Bits 16:23 - Non-periodic transmit request queue space available" ]
+            # [ inline ( always ) ]
+            pub fn nptqxsav(&self) -> NptqxsavR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptqxsavR { bits }
+            }
+            # [ doc = "Bits 24:30 - Top of the non-periodic transmit request queue" ]
+            # [ inline ( always ) ]
+            pub fn nptxqtop(&self) -> NptxqtopR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxqtopR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS general core configuration register (OTG_FS_GCCFG)" ]
+    pub struct FsGccfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS general core configuration register (OTG_FS_GCCFG)" ]
+    pub mod fs_gccfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsGccfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrdwnR {
+            bits: u8,
+        }
+        impl PwrdwnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusasenR {
+            bits: u8,
+        }
+        impl VbusasenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusbsenR {
+            bits: u8,
+        }
+        impl VbusbsenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofoutenR {
+            bits: u8,
+        }
+        impl SofoutenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrdwnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrdwnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusasenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusasenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusbsenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusbsenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofoutenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofoutenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Power down" ]
+            # [ inline ( always ) ]
+            pub fn pwrdwn(&self) -> PwrdwnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrdwnR { bits }
+            }
+            # [ doc = "Bit 18 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusasen(&self) -> VbusasenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VbusasenR { bits }
+            }
+            # [ doc = "Bit 19 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusbsen(&self) -> VbusbsenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VbusbsenR { bits }
+            }
+            # [ doc = "Bit 20 - SOF output enable" ]
+            # [ inline ( always ) ]
+            pub fn sofouten(&self) -> SofoutenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofoutenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Power down" ]
+            # [ inline ( always ) ]
+            pub fn pwrdwn(&mut self) -> _PwrdwnW {
+                _PwrdwnW { w: self }
+            }
+            # [ doc = "Bit 18 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusasen(&mut self) -> _VbusasenW {
+                _VbusasenW { w: self }
+            }
+            # [ doc = "Bit 19 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusbsen(&mut self) -> _VbusbsenW {
+                _VbusbsenW { w: self }
+            }
+            # [ doc = "Bit 20 - SOF output enable" ]
+            # [ inline ( always ) ]
+            pub fn sofouten(&mut self) -> _SofoutenW {
+                _SofoutenW { w: self }
+            }
+        }
+    }
+    # [ doc = "core ID register" ]
+    pub struct FsCid {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "core ID register" ]
+    pub mod fs_cid {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsCid {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ProductIdR {
+            bits: u32,
+        }
+        impl ProductIdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ProductIdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ProductIdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Product ID field" ]
+            # [ inline ( always ) ]
+            pub fn product_id(&self) -> ProductIdR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ProductIdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4096 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Product ID field" ]
+            # [ inline ( always ) ]
+            pub fn product_id(&mut self) -> _ProductIdW {
+                _ProductIdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ]
+    pub struct FsHptxfsiz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Host periodic transmit FIFO size register (OTG_FS_HPTXFSIZ)" ]
+    pub mod fs_hptxfsiz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHptxfsiz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxsaR {
+            bits: u16,
+        }
+        impl PtxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfsizR {
+            bits: u16,
+        }
+        impl PtxfsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ]
+            # [ inline ( always ) ]
+            pub fn ptxsa(&self) -> PtxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsiz(&self) -> PtxfsizR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxfsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555968 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ]
+            # [ inline ( always ) ]
+            pub fn ptxsa(&mut self) -> _PtxsaW {
+                _PtxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsiz(&mut self) -> _PtxfsizW {
+                _PtxfsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ]
+    pub struct FsDieptxf1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF2)" ]
+    pub mod fs_dieptxf1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDieptxf1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO2 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO2 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ]
+    pub struct FsDieptxf2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF3)" ]
+    pub mod fs_dieptxf2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDieptxf2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO3 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO3 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ]
+    pub struct FsDieptxf3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO size register (OTG_FS_DIEPTXF4)" ]
+    pub mod fs_dieptxf3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDieptxf3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO4 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFO4 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub struct OtgFsGlobal {
+    register_block: otg_fs_global::RegisterBlock,
+}
+impl Deref for OtgFsGlobal {
+    type Target = otg_fs_global::RegisterBlock;
+    fn deref(&self) -> &otg_fs_global::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub const OTG_FS_HOST: Peripheral<OtgFsHost> =
+    unsafe { Peripheral::new(1342178304) };
+# [ doc = "USB on the go full speed" ]
+pub mod otg_fs_host {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_FS host configuration register (OTG_FS_HCFG)" ]
+        pub fs_hcfg: FsHcfg,
+        # [ doc = "0x04 - OTG_FS Host frame interval register" ]
+        pub hfir: Hfir,
+        # [ doc = "0x08 - OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ]
+        pub fs_hfnum: FsHfnum,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x10 - OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ]
+        pub fs_hptxsts: FsHptxsts,
+        # [ doc = "0x14 - OTG_FS Host all channels interrupt register" ]
+        pub haint: Haint,
+        # [ doc = "0x18 - OTG_FS host all channels interrupt mask register" ]
+        pub haintmsk: Haintmsk,
+        _reserved1: [u8; 36usize],
+        # [ doc = "0x40 - OTG_FS host port control and status register (OTG_FS_HPRT)" ]
+        pub fs_hprt: FsHprt,
+        _reserved2: [u8; 188usize],
+        # [ doc = "0x100 - OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ]
+        pub fs_hcchar0: FsHcchar0,
+        _reserved3: [u8; 4usize],
+        # [ doc = "0x108 - OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ]
+        pub fs_hcint0: FsHcint0,
+        # [ doc = "0x10c - OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ]
+        pub fs_hcintmsk0: FsHcintmsk0,
+        # [ doc = "0x110 - OTG_FS host channel-0 transfer size register" ]
+        pub fs_hctsiz0: FsHctsiz0,
+        _reserved4: [u8; 12usize],
+        # [ doc = "0x120 - OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ]
+        pub fs_hcchar1: FsHcchar1,
+        _reserved5: [u8; 4usize],
+        # [ doc = "0x128 - OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ]
+        pub fs_hcint1: FsHcint1,
+        # [ doc = "0x12c - OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ]
+        pub fs_hcintmsk1: FsHcintmsk1,
+        # [ doc = "0x130 - OTG_FS host channel-1 transfer size register" ]
+        pub fs_hctsiz1: FsHctsiz1,
+        _reserved6: [u8; 12usize],
+        # [ doc = "0x140 - OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ]
+        pub fs_hcchar2: FsHcchar2,
+        _reserved7: [u8; 4usize],
+        # [ doc = "0x148 - OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ]
+        pub fs_hcint2: FsHcint2,
+        # [ doc = "0x14c - OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ]
+        pub fs_hcintmsk2: FsHcintmsk2,
+        # [ doc = "0x150 - OTG_FS host channel-2 transfer size register" ]
+        pub fs_hctsiz2: FsHctsiz2,
+        _reserved8: [u8; 12usize],
+        # [ doc = "0x160 - OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ]
+        pub fs_hcchar3: FsHcchar3,
+        _reserved9: [u8; 4usize],
+        # [ doc = "0x168 - OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ]
+        pub fs_hcint3: FsHcint3,
+        # [ doc = "0x16c - OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ]
+        pub fs_hcintmsk3: FsHcintmsk3,
+        # [ doc = "0x170 - OTG_FS host channel-3 transfer size register" ]
+        pub fs_hctsiz3: FsHctsiz3,
+        _reserved10: [u8; 12usize],
+        # [ doc = "0x180 - OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ]
+        pub fs_hcchar4: FsHcchar4,
+        _reserved11: [u8; 4usize],
+        # [ doc = "0x188 - OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ]
+        pub fs_hcint4: FsHcint4,
+        # [ doc = "0x18c - OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ]
+        pub fs_hcintmsk4: FsHcintmsk4,
+        # [ doc = "0x190 - OTG_FS host channel-x transfer size register" ]
+        pub fs_hctsiz4: FsHctsiz4,
+        _reserved12: [u8; 12usize],
+        # [ doc = "0x1a0 - OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ]
+        pub fs_hcchar5: FsHcchar5,
+        _reserved13: [u8; 4usize],
+        # [ doc = "0x1a8 - OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ]
+        pub fs_hcint5: FsHcint5,
+        # [ doc = "0x1ac - OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ]
+        pub fs_hcintmsk5: FsHcintmsk5,
+        # [ doc = "0x1b0 - OTG_FS host channel-5 transfer size register" ]
+        pub fs_hctsiz5: FsHctsiz5,
+        _reserved14: [u8; 12usize],
+        # [ doc = "0x1c0 - OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ]
+        pub fs_hcchar6: FsHcchar6,
+        _reserved15: [u8; 4usize],
+        # [ doc = "0x1c8 - OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ]
+        pub fs_hcint6: FsHcint6,
+        # [ doc = "0x1cc - OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ]
+        pub fs_hcintmsk6: FsHcintmsk6,
+        # [ doc = "0x1d0 - OTG_FS host channel-6 transfer size register" ]
+        pub fs_hctsiz6: FsHctsiz6,
+        _reserved16: [u8; 12usize],
+        # [ doc = "0x1e0 - OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ]
+        pub fs_hcchar7: FsHcchar7,
+        _reserved17: [u8; 4usize],
+        # [ doc = "0x1e8 - OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ]
+        pub fs_hcint7: FsHcint7,
+        # [ doc = "0x1ec - OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ]
+        pub fs_hcintmsk7: FsHcintmsk7,
+        # [ doc = "0x1f0 - OTG_FS host channel-7 transfer size register" ]
+        pub fs_hctsiz7: FsHctsiz7,
+    }
+    # [ doc = "OTG_FS host configuration register (OTG_FS_HCFG)" ]
+    pub struct FsHcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host configuration register (OTG_FS_HCFG)" ]
+    pub mod fs_hcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FslspcsR {
+            bits: u8,
+        }
+        impl FslspcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FslssR {
+            bits: u8,
+        }
+        impl FslssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FslspcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FslspcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - FS/LS PHY clock select" ]
+            # [ inline ( always ) ]
+            pub fn fslspcs(&self) -> FslspcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FslspcsR { bits }
+            }
+            # [ doc = "Bit 2 - FS- and LS-only support" ]
+            # [ inline ( always ) ]
+            pub fn fslss(&self) -> FslssR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FslssR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - FS/LS PHY clock select" ]
+            # [ inline ( always ) ]
+            pub fn fslspcs(&mut self) -> _FslspcsW {
+                _FslspcsW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Host frame interval register" ]
+    pub struct Hfir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Host frame interval register" ]
+    pub mod hfir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Hfir {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrivlR {
+            bits: u16,
+        }
+        impl FrivlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrivlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrivlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Frame interval" ]
+            # [ inline ( always ) ]
+            pub fn frivl(&self) -> FrivlR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FrivlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 60000 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Frame interval" ]
+            # [ inline ( always ) ]
+            pub fn frivl(&mut self) -> _FrivlW {
+                _FrivlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ]
+    pub struct FsHfnum {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host frame number/frame time remaining register (OTG_FS_HFNUM)" ]
+    pub mod fs_hfnum {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsHfnum {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrnumR {
+            bits: u16,
+        }
+        impl FrnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FtremR {
+            bits: u16,
+        }
+        impl FtremR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frnum(&self) -> FrnumR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FrnumR { bits }
+            }
+            # [ doc = "Bits 16:31 - Frame time remaining" ]
+            # [ inline ( always ) ]
+            pub fn ftrem(&self) -> FtremR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FtremR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ]
+    pub struct FsHptxsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS_Host periodic transmit FIFO/queue status register (OTG_FS_HPTXSTS)" ]
+    pub mod fs_hptxsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHptxsts {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfsavlR {
+            bits: u16,
+        }
+        impl PtxfsavlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxqsavR {
+            bits: u8,
+        }
+        impl PtxqsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxqtopR {
+            bits: u8,
+        }
+        impl PtxqtopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfsavlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfsavlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsavl(&self) -> PtxfsavlR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxfsavlR { bits }
+            }
+            # [ doc = "Bits 16:23 - Periodic transmit request queue space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxqsav(&self) -> PtxqsavR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxqsavR { bits }
+            }
+            # [ doc = "Bits 24:31 - Top of the periodic transmit request queue" ]
+            # [ inline ( always ) ]
+            pub fn ptxqtop(&self) -> PtxqtopR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxqtopR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 524544 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsavl(&mut self) -> _PtxfsavlW {
+                _PtxfsavlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS Host all channels interrupt register" ]
+    pub struct Haint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS Host all channels interrupt register" ]
+    pub mod haint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Haint {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HaintR {
+            bits: u16,
+        }
+        impl HaintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Channel interrupts" ]
+            # [ inline ( always ) ]
+            pub fn haint(&self) -> HaintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HaintR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host all channels interrupt mask register" ]
+    pub struct Haintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host all channels interrupt mask register" ]
+    pub mod haintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Haintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HaintmR {
+            bits: u16,
+        }
+        impl HaintmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HaintmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HaintmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Channel interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn haintm(&self) -> HaintmR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HaintmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Channel interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn haintm(&mut self) -> _HaintmW {
+                _HaintmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host port control and status register (OTG_FS_HPRT)" ]
+    pub struct FsHprt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host port control and status register (OTG_FS_HPRT)" ]
+    pub mod fs_hprt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHprt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcstsR {
+            bits: u8,
+        }
+        impl PcstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcdetR {
+            bits: u8,
+        }
+        impl PcdetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PenaR {
+            bits: u8,
+        }
+        impl PenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PenchngR {
+            bits: u8,
+        }
+        impl PenchngR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PocaR {
+            bits: u8,
+        }
+        impl PocaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PocchngR {
+            bits: u8,
+        }
+        impl PocchngR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PresR {
+            bits: u8,
+        }
+        impl PresR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsuspR {
+            bits: u8,
+        }
+        impl PsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrstR {
+            bits: u8,
+        }
+        impl PrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlstsR {
+            bits: u8,
+        }
+        impl PlstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PpwrR {
+            bits: u8,
+        }
+        impl PpwrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtctlR {
+            bits: u8,
+        }
+        impl PtctlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PspdR {
+            bits: u8,
+        }
+        impl PspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PcdetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PcdetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PenchngW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PenchngW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PocchngW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PocchngW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PresW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PresW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PpwrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PpwrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtctlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtctlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Port connect status" ]
+            # [ inline ( always ) ]
+            pub fn pcsts(&self) -> PcstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcstsR { bits }
+            }
+            # [ doc = "Bit 1 - Port connect detected" ]
+            # [ inline ( always ) ]
+            pub fn pcdet(&self) -> PcdetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcdetR { bits }
+            }
+            # [ doc = "Bit 2 - Port enable" ]
+            # [ inline ( always ) ]
+            pub fn pena(&self) -> PenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PenaR { bits }
+            }
+            # [ doc = "Bit 3 - Port enable/disable change" ]
+            # [ inline ( always ) ]
+            pub fn penchng(&self) -> PenchngR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PenchngR { bits }
+            }
+            # [ doc = "Bit 4 - Port overcurrent active" ]
+            # [ inline ( always ) ]
+            pub fn poca(&self) -> PocaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PocaR { bits }
+            }
+            # [ doc = "Bit 5 - Port overcurrent change" ]
+            # [ inline ( always ) ]
+            pub fn pocchng(&self) -> PocchngR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PocchngR { bits }
+            }
+            # [ doc = "Bit 6 - Port resume" ]
+            # [ inline ( always ) ]
+            pub fn pres(&self) -> PresR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PresR { bits }
+            }
+            # [ doc = "Bit 7 - Port suspend" ]
+            # [ inline ( always ) ]
+            pub fn psusp(&self) -> PsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsuspR { bits }
+            }
+            # [ doc = "Bit 8 - Port reset" ]
+            # [ inline ( always ) ]
+            pub fn prst(&self) -> PrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrstR { bits }
+            }
+            # [ doc = "Bits 10:11 - Port line status" ]
+            # [ inline ( always ) ]
+            pub fn plsts(&self) -> PlstsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlstsR { bits }
+            }
+            # [ doc = "Bit 12 - Port power" ]
+            # [ inline ( always ) ]
+            pub fn ppwr(&self) -> PpwrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PpwrR { bits }
+            }
+            # [ doc = "Bits 13:16 - Port test control" ]
+            # [ inline ( always ) ]
+            pub fn ptctl(&self) -> PtctlR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtctlR { bits }
+            }
+            # [ doc = "Bits 17:18 - Port speed" ]
+            # [ inline ( always ) ]
+            pub fn pspd(&self) -> PspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PspdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Port connect detected" ]
+            # [ inline ( always ) ]
+            pub fn pcdet(&mut self) -> _PcdetW {
+                _PcdetW { w: self }
+            }
+            # [ doc = "Bit 2 - Port enable" ]
+            # [ inline ( always ) ]
+            pub fn pena(&mut self) -> _PenaW {
+                _PenaW { w: self }
+            }
+            # [ doc = "Bit 3 - Port enable/disable change" ]
+            # [ inline ( always ) ]
+            pub fn penchng(&mut self) -> _PenchngW {
+                _PenchngW { w: self }
+            }
+            # [ doc = "Bit 5 - Port overcurrent change" ]
+            # [ inline ( always ) ]
+            pub fn pocchng(&mut self) -> _PocchngW {
+                _PocchngW { w: self }
+            }
+            # [ doc = "Bit 6 - Port resume" ]
+            # [ inline ( always ) ]
+            pub fn pres(&mut self) -> _PresW {
+                _PresW { w: self }
+            }
+            # [ doc = "Bit 7 - Port suspend" ]
+            # [ inline ( always ) ]
+            pub fn psusp(&mut self) -> _PsuspW {
+                _PsuspW { w: self }
+            }
+            # [ doc = "Bit 8 - Port reset" ]
+            # [ inline ( always ) ]
+            pub fn prst(&mut self) -> _PrstW {
+                _PrstW { w: self }
+            }
+            # [ doc = "Bit 12 - Port power" ]
+            # [ inline ( always ) ]
+            pub fn ppwr(&mut self) -> _PpwrW {
+                _PpwrW { w: self }
+            }
+            # [ doc = "Bits 13:16 - Port test control" ]
+            # [ inline ( always ) ]
+            pub fn ptctl(&mut self) -> _PtctlW {
+                _PtctlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ]
+    pub struct FsHcchar0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-0 characteristics register (OTG_FS_HCCHAR0)" ]
+    pub mod fs_hcchar0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ]
+    pub struct FsHcchar1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-1 characteristics register (OTG_FS_HCCHAR1)" ]
+    pub mod fs_hcchar1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ]
+    pub struct FsHcchar2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-2 characteristics register (OTG_FS_HCCHAR2)" ]
+    pub mod fs_hcchar2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ]
+    pub struct FsHcchar3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-3 characteristics register (OTG_FS_HCCHAR3)" ]
+    pub mod fs_hcchar3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ]
+    pub struct FsHcchar4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-4 characteristics register (OTG_FS_HCCHAR4)" ]
+    pub mod fs_hcchar4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ]
+    pub struct FsHcchar5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-5 characteristics register (OTG_FS_HCCHAR5)" ]
+    pub mod fs_hcchar5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ]
+    pub struct FsHcchar6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-6 characteristics register (OTG_FS_HCCHAR6)" ]
+    pub mod fs_hcchar6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ]
+    pub struct FsHcchar7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-7 characteristics register (OTG_FS_HCCHAR7)" ]
+    pub mod fs_hcchar7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcchar7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multicount" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ]
+    pub struct FsHcint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-0 interrupt register (OTG_FS_HCINT0)" ]
+    pub mod fs_hcint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ]
+    pub struct FsHcint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-1 interrupt register (OTG_FS_HCINT1)" ]
+    pub mod fs_hcint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ]
+    pub struct FsHcint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-2 interrupt register (OTG_FS_HCINT2)" ]
+    pub mod fs_hcint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ]
+    pub struct FsHcint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-3 interrupt register (OTG_FS_HCINT3)" ]
+    pub mod fs_hcint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ]
+    pub struct FsHcint4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-4 interrupt register (OTG_FS_HCINT4)" ]
+    pub mod fs_hcint4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ]
+    pub struct FsHcint5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-5 interrupt register (OTG_FS_HCINT5)" ]
+    pub mod fs_hcint5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ]
+    pub struct FsHcint6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-6 interrupt register (OTG_FS_HCINT6)" ]
+    pub mod fs_hcint6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ]
+    pub struct FsHcint7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-7 interrupt register (OTG_FS_HCINT7)" ]
+    pub mod fs_hcint7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcint7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ]
+    pub struct FsHcintmsk0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-0 mask register (OTG_FS_HCINTMSK0)" ]
+    pub mod fs_hcintmsk0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ]
+    pub struct FsHcintmsk1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-1 mask register (OTG_FS_HCINTMSK1)" ]
+    pub mod fs_hcintmsk1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ]
+    pub struct FsHcintmsk2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-2 mask register (OTG_FS_HCINTMSK2)" ]
+    pub mod fs_hcintmsk2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ]
+    pub struct FsHcintmsk3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-3 mask register (OTG_FS_HCINTMSK3)" ]
+    pub mod fs_hcintmsk3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ]
+    pub struct FsHcintmsk4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-4 mask register (OTG_FS_HCINTMSK4)" ]
+    pub mod fs_hcintmsk4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ]
+    pub struct FsHcintmsk5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-5 mask register (OTG_FS_HCINTMSK5)" ]
+    pub mod fs_hcintmsk5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ]
+    pub struct FsHcintmsk6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-6 mask register (OTG_FS_HCINTMSK6)" ]
+    pub mod fs_hcintmsk6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ]
+    pub struct FsHcintmsk7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-7 mask register (OTG_FS_HCINTMSK7)" ]
+    pub mod fs_hcintmsk7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHcintmsk7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-0 transfer size register" ]
+    pub struct FsHctsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-0 transfer size register" ]
+    pub mod fs_hctsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-1 transfer size register" ]
+    pub struct FsHctsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-1 transfer size register" ]
+    pub mod fs_hctsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-2 transfer size register" ]
+    pub struct FsHctsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-2 transfer size register" ]
+    pub mod fs_hctsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-3 transfer size register" ]
+    pub struct FsHctsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-3 transfer size register" ]
+    pub mod fs_hctsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-x transfer size register" ]
+    pub struct FsHctsiz4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-x transfer size register" ]
+    pub mod fs_hctsiz4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-5 transfer size register" ]
+    pub struct FsHctsiz5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-5 transfer size register" ]
+    pub mod fs_hctsiz5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-6 transfer size register" ]
+    pub struct FsHctsiz6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-6 transfer size register" ]
+    pub mod fs_hctsiz6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS host channel-7 transfer size register" ]
+    pub struct FsHctsiz7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS host channel-7 transfer size register" ]
+    pub mod fs_hctsiz7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsHctsiz7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub struct OtgFsHost {
+    register_block: otg_fs_host::RegisterBlock,
+}
+impl Deref for OtgFsHost {
+    type Target = otg_fs_host::RegisterBlock;
+    fn deref(&self) -> &otg_fs_host::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub const OTG_FS_DEVICE: Peripheral<OtgFsDevice> =
+    unsafe { Peripheral::new(1342179328) };
+# [ doc = "USB on the go full speed" ]
+pub mod otg_fs_device {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_FS device configuration register (OTG_FS_DCFG)" ]
+        pub fs_dcfg: FsDcfg,
+        # [ doc = "0x04 - OTG_FS device control register (OTG_FS_DCTL)" ]
+        pub fs_dctl: FsDctl,
+        # [ doc = "0x08 - OTG_FS device status register (OTG_FS_DSTS)" ]
+        pub fs_dsts: FsDsts,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x10 - OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ]
+        pub fs_diepmsk: FsDiepmsk,
+        # [ doc = "0x14 - OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ]
+        pub fs_doepmsk: FsDoepmsk,
+        # [ doc = "0x18 - OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ]
+        pub fs_daint: FsDaint,
+        # [ doc = "0x1c - OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ]
+        pub fs_daintmsk: FsDaintmsk,
+        _reserved1: [u8; 8usize],
+        # [ doc = "0x28 - OTG_FS device VBUS discharge time register" ]
+        pub dvbusdis: Dvbusdis,
+        # [ doc = "0x2c - OTG_FS device VBUS pulsing time register" ]
+        pub dvbuspulse: Dvbuspulse,
+        _reserved2: [u8; 4usize],
+        # [ doc = "0x34 - OTG_FS device IN endpoint FIFO empty interrupt mask register" ]
+        pub diepempmsk: Diepempmsk,
+        _reserved3: [u8; 200usize],
+        # [ doc = "0x100 - OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ]
+        pub fs_diepctl0: FsDiepctl0,
+        _reserved4: [u8; 4usize],
+        # [ doc = "0x108 - device endpoint-x interrupt register" ]
+        pub diepint0: Diepint0,
+        _reserved5: [u8; 4usize],
+        # [ doc = "0x110 - device endpoint-0 transfer size register" ]
+        pub dieptsiz0: Dieptsiz0,
+        _reserved6: [u8; 4usize],
+        # [ doc = "0x118 - OTG_FS device IN endpoint transmit FIFO status register" ]
+        pub dtxfsts0: Dtxfsts0,
+        _reserved7: [u8; 4usize],
+        # [ doc = "0x120 - OTG device endpoint-1 control register" ]
+        pub diepctl1: Diepctl1,
+        _reserved8: [u8; 4usize],
+        # [ doc = "0x128 - device endpoint-1 interrupt register" ]
+        pub diepint1: Diepint1,
+        _reserved9: [u8; 4usize],
+        # [ doc = "0x130 - device endpoint-1 transfer size register" ]
+        pub dieptsiz1: Dieptsiz1,
+        _reserved10: [u8; 4usize],
+        # [ doc = "0x138 - OTG_FS device IN endpoint transmit FIFO status register" ]
+        pub dtxfsts1: Dtxfsts1,
+        _reserved11: [u8; 4usize],
+        # [ doc = "0x140 - OTG device endpoint-2 control register" ]
+        pub diepctl2: Diepctl2,
+        _reserved12: [u8; 4usize],
+        # [ doc = "0x148 - device endpoint-2 interrupt register" ]
+        pub diepint2: Diepint2,
+        _reserved13: [u8; 4usize],
+        # [ doc = "0x150 - device endpoint-2 transfer size register" ]
+        pub dieptsiz2: Dieptsiz2,
+        _reserved14: [u8; 4usize],
+        # [ doc = "0x158 - OTG_FS device IN endpoint transmit FIFO status register" ]
+        pub dtxfsts2: Dtxfsts2,
+        _reserved15: [u8; 4usize],
+        # [ doc = "0x160 - OTG device endpoint-3 control register" ]
+        pub diepctl3: Diepctl3,
+        _reserved16: [u8; 4usize],
+        # [ doc = "0x168 - device endpoint-3 interrupt register" ]
+        pub diepint3: Diepint3,
+        _reserved17: [u8; 4usize],
+        # [ doc = "0x170 - device endpoint-3 transfer size register" ]
+        pub dieptsiz3: Dieptsiz3,
+        _reserved18: [u8; 4usize],
+        # [ doc = "0x178 - OTG_FS device IN endpoint transmit FIFO status register" ]
+        pub dtxfsts3: Dtxfsts3,
+        _reserved19: [u8; 388usize],
+        # [ doc = "0x300 - device endpoint-0 control register" ]
+        pub doepctl0: Doepctl0,
+        _reserved20: [u8; 4usize],
+        # [ doc = "0x308 - device endpoint-0 interrupt register" ]
+        pub doepint0: Doepint0,
+        _reserved21: [u8; 4usize],
+        # [ doc = "0x310 - device OUT endpoint-0 transfer size register" ]
+        pub doeptsiz0: Doeptsiz0,
+        _reserved22: [u8; 12usize],
+        # [ doc = "0x320 - device endpoint-1 control register" ]
+        pub doepctl1: Doepctl1,
+        _reserved23: [u8; 4usize],
+        # [ doc = "0x328 - device endpoint-1 interrupt register" ]
+        pub doepint1: Doepint1,
+        _reserved24: [u8; 4usize],
+        # [ doc = "0x330 - device OUT endpoint-1 transfer size register" ]
+        pub doeptsiz1: Doeptsiz1,
+        _reserved25: [u8; 12usize],
+        # [ doc = "0x340 - device endpoint-2 control register" ]
+        pub doepctl2: Doepctl2,
+        _reserved26: [u8; 4usize],
+        # [ doc = "0x348 - device endpoint-2 interrupt register" ]
+        pub doepint2: Doepint2,
+        _reserved27: [u8; 4usize],
+        # [ doc = "0x350 - device OUT endpoint-2 transfer size register" ]
+        pub doeptsiz2: Doeptsiz2,
+        _reserved28: [u8; 12usize],
+        # [ doc = "0x360 - device endpoint-3 control register" ]
+        pub doepctl3: Doepctl3,
+        _reserved29: [u8; 4usize],
+        # [ doc = "0x368 - device endpoint-3 interrupt register" ]
+        pub doepint3: Doepint3,
+        _reserved30: [u8; 4usize],
+        # [ doc = "0x370 - device OUT endpoint-3 transfer size register" ]
+        pub doeptsiz3: Doeptsiz3,
+    }
+    # [ doc = "OTG_FS device configuration register (OTG_FS_DCFG)" ]
+    pub struct FsDcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device configuration register (OTG_FS_DCFG)" ]
+    pub mod fs_dcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DspdR {
+            bits: u8,
+        }
+        impl DspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NzlsohskR {
+            bits: u8,
+        }
+        impl NzlsohskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfivlR {
+            bits: u8,
+        }
+        impl PfivlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DspdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DspdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NzlsohskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NzlsohskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfivlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfivlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - Device speed" ]
+            # [ inline ( always ) ]
+            pub fn dspd(&self) -> DspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DspdR { bits }
+            }
+            # [ doc = "Bit 2 - Non-zero-length status OUT handshake" ]
+            # [ inline ( always ) ]
+            pub fn nzlsohsk(&self) -> NzlsohskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NzlsohskR { bits }
+            }
+            # [ doc = "Bits 4:10 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bits 11:12 - Periodic frame interval" ]
+            # [ inline ( always ) ]
+            pub fn pfivl(&self) -> PfivlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfivlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 35651584 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - Device speed" ]
+            # [ inline ( always ) ]
+            pub fn dspd(&mut self) -> _DspdW {
+                _DspdW { w: self }
+            }
+            # [ doc = "Bit 2 - Non-zero-length status OUT handshake" ]
+            # [ inline ( always ) ]
+            pub fn nzlsohsk(&mut self) -> _NzlsohskW {
+                _NzlsohskW { w: self }
+            }
+            # [ doc = "Bits 4:10 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Periodic frame interval" ]
+            # [ inline ( always ) ]
+            pub fn pfivl(&mut self) -> _PfivlW {
+                _PfivlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device control register (OTG_FS_DCTL)" ]
+    pub struct FsDctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device control register (OTG_FS_DCTL)" ]
+    pub mod fs_dctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwusigR {
+            bits: u8,
+        }
+        impl RwusigR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdisR {
+            bits: u8,
+        }
+        impl SdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinstsR {
+            bits: u8,
+        }
+        impl GinstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GonstsR {
+            bits: u8,
+        }
+        impl GonstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TctlR {
+            bits: u8,
+        }
+        impl TctlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SginakR {
+            bits: u8,
+        }
+        impl SginakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CginakR {
+            bits: u8,
+        }
+        impl CginakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SgonakR {
+            bits: u8,
+        }
+        impl SgonakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CgonakR {
+            bits: u8,
+        }
+        impl CgonakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PoprgdneR {
+            bits: u8,
+        }
+        impl PoprgdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwusigW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwusigW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TctlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TctlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SginakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SginakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CginakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CginakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SgonakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SgonakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CgonakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CgonakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PoprgdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PoprgdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Remote wakeup signaling" ]
+            # [ inline ( always ) ]
+            pub fn rwusig(&self) -> RwusigR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwusigR { bits }
+            }
+            # [ doc = "Bit 1 - Soft disconnect" ]
+            # [ inline ( always ) ]
+            pub fn sdis(&self) -> SdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdisR { bits }
+            }
+            # [ doc = "Bit 2 - Global IN NAK status" ]
+            # [ inline ( always ) ]
+            pub fn ginsts(&self) -> GinstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinstsR { bits }
+            }
+            # [ doc = "Bit 3 - Global OUT NAK status" ]
+            # [ inline ( always ) ]
+            pub fn gonsts(&self) -> GonstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GonstsR { bits }
+            }
+            # [ doc = "Bits 4:6 - Test control" ]
+            # [ inline ( always ) ]
+            pub fn tctl(&self) -> TctlR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TctlR { bits }
+            }
+            # [ doc = "Bit 7 - Set global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn sginak(&self) -> SginakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SginakR { bits }
+            }
+            # [ doc = "Bit 8 - Clear global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn cginak(&self) -> CginakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CginakR { bits }
+            }
+            # [ doc = "Bit 9 - Set global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn sgonak(&self) -> SgonakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SgonakR { bits }
+            }
+            # [ doc = "Bit 10 - Clear global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn cgonak(&self) -> CgonakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CgonakR { bits }
+            }
+            # [ doc = "Bit 11 - Power-on programming done" ]
+            # [ inline ( always ) ]
+            pub fn poprgdne(&self) -> PoprgdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PoprgdneR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Remote wakeup signaling" ]
+            # [ inline ( always ) ]
+            pub fn rwusig(&mut self) -> _RwusigW {
+                _RwusigW { w: self }
+            }
+            # [ doc = "Bit 1 - Soft disconnect" ]
+            # [ inline ( always ) ]
+            pub fn sdis(&mut self) -> _SdisW {
+                _SdisW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Test control" ]
+            # [ inline ( always ) ]
+            pub fn tctl(&mut self) -> _TctlW {
+                _TctlW { w: self }
+            }
+            # [ doc = "Bit 7 - Set global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn sginak(&mut self) -> _SginakW {
+                _SginakW { w: self }
+            }
+            # [ doc = "Bit 8 - Clear global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn cginak(&mut self) -> _CginakW {
+                _CginakW { w: self }
+            }
+            # [ doc = "Bit 9 - Set global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn sgonak(&mut self) -> _SgonakW {
+                _SgonakW { w: self }
+            }
+            # [ doc = "Bit 10 - Clear global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn cgonak(&mut self) -> _CgonakW {
+                _CgonakW { w: self }
+            }
+            # [ doc = "Bit 11 - Power-on programming done" ]
+            # [ inline ( always ) ]
+            pub fn poprgdne(&mut self) -> _PoprgdneW {
+                _PoprgdneW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device status register (OTG_FS_DSTS)" ]
+    pub struct FsDsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device status register (OTG_FS_DSTS)" ]
+    pub mod fs_dsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsDsts {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SuspstsR {
+            bits: u8,
+        }
+        impl SuspstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumspdR {
+            bits: u8,
+        }
+        impl EnumspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EerrR {
+            bits: u8,
+        }
+        impl EerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FnsofR {
+            bits: u16,
+        }
+        impl FnsofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Suspend status" ]
+            # [ inline ( always ) ]
+            pub fn suspsts(&self) -> SuspstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SuspstsR { bits }
+            }
+            # [ doc = "Bits 1:2 - Enumerated speed" ]
+            # [ inline ( always ) ]
+            pub fn enumspd(&self) -> EnumspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumspdR { bits }
+            }
+            # [ doc = "Bit 3 - Erratic error" ]
+            # [ inline ( always ) ]
+            pub fn eerr(&self) -> EerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EerrR { bits }
+            }
+            # [ doc = "Bits 8:21 - Frame number of the received SOF" ]
+            # [ inline ( always ) ]
+            pub fn fnsof(&self) -> FnsofR {
+                let bits = {
+                    const MASK: u16 = 16383;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FnsofR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ]
+    pub struct FsDiepmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint common interrupt mask register (OTG_FS_DIEPMSK)" ]
+    pub mod fs_diepmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDiepmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TomR {
+            bits: u8,
+        }
+        impl TomR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfemskR {
+            bits: u8,
+        }
+        impl IttxfemskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnmmR {
+            bits: u8,
+        }
+        impl InepnmmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnemR {
+            bits: u8,
+        }
+        impl InepnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TomW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TomW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfemskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfemskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnmmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnmmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (Non-isochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&self) -> TomR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TomR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&self) -> IttxfemskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfemskR { bits }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&self) -> InepnmmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnmmR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&self) -> InepnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnemR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (Non-isochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&mut self) -> _TomW {
+                _TomW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&mut self) -> _IttxfemskW {
+                _IttxfemskW { w: self }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&mut self) -> _InepnmmW {
+                _InepnmmW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&mut self) -> _InepnemW {
+                _InepnemW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ]
+    pub struct FsDoepmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device OUT endpoint common interrupt mask register (OTG_FS_DOEPMSK)" ]
+    pub mod fs_doepmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDoepmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupmR {
+            bits: u8,
+        }
+        impl StupmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdmR {
+            bits: u8,
+        }
+        impl OtepdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done mask" ]
+            # [ inline ( always ) ]
+            pub fn stupm(&self) -> StupmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupmR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ]
+            # [ inline ( always ) ]
+            pub fn otepdm(&self) -> OtepdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done mask" ]
+            # [ inline ( always ) ]
+            pub fn stupm(&mut self) -> _StupmW {
+                _StupmW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ]
+            # [ inline ( always ) ]
+            pub fn otepdm(&mut self) -> _OtepdmW {
+                _OtepdmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ]
+    pub struct FsDaint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device all endpoints interrupt register (OTG_FS_DAINT)" ]
+    pub mod fs_daint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::FsDaint {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u16,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u16,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                OepintR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ]
+    pub struct FsDaintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS all endpoints interrupt mask register (OTG_FS_DAINTMSK)" ]
+    pub mod fs_daintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDaintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepmR {
+            bits: u16,
+        }
+        impl IepmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u16,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IepmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IepmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OepintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OepintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn iepm(&self) -> IepmR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IepmR { bits }
+            }
+            # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                OepintR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn iepm(&mut self) -> _IepmW {
+                _IepmW { w: self }
+            }
+            # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&mut self) -> _OepintW {
+                _OepintW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device VBUS discharge time register" ]
+    pub struct Dvbusdis {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device VBUS discharge time register" ]
+    pub mod dvbusdis {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dvbusdis {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusdtR {
+            bits: u16,
+        }
+        impl VbusdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Device VBUS discharge time" ]
+            # [ inline ( always ) ]
+            pub fn vbusdt(&self) -> VbusdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                VbusdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 6103 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Device VBUS discharge time" ]
+            # [ inline ( always ) ]
+            pub fn vbusdt(&mut self) -> _VbusdtW {
+                _VbusdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device VBUS pulsing time register" ]
+    pub struct Dvbuspulse {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device VBUS pulsing time register" ]
+    pub mod dvbuspulse {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dvbuspulse {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DvbuspR {
+            bits: u16,
+        }
+        impl DvbuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DvbuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DvbuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Device VBUS pulsing time" ]
+            # [ inline ( always ) ]
+            pub fn dvbusp(&self) -> DvbuspR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DvbuspR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1464 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Device VBUS pulsing time" ]
+            # [ inline ( always ) ]
+            pub fn dvbusp(&mut self) -> _DvbuspW {
+                _DvbuspW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint FIFO empty interrupt mask register" ]
+    pub struct Diepempmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint FIFO empty interrupt mask register" ]
+    pub mod diepempmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepempmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfemR {
+            bits: u16,
+        }
+        impl IneptxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfem(&self) -> IneptxfemR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfemR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfem(&mut self) -> _IneptxfemW {
+                _IneptxfemW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ]
+    pub struct FsDiepctl0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device control IN endpoint 0 control register (OTG_FS_DIEPCTL0)" ]
+    pub mod fs_diepctl0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsDiepctl0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u8,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub struct Diepctl1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub mod diepctl1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepctl1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmSd1pidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmSd1pidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM/SD1PID" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm_sd1pid(&mut self) -> _SoddfrmSd1pidW {
+                _SoddfrmSd1pidW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub struct Diepctl2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub mod diepctl2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepctl2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub struct Diepctl3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub mod diepctl3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepctl3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TXFNUM" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-0 control register" ]
+    pub struct Doepctl0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-0 control register" ]
+    pub mod doepctl0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepctl0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u8,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:1 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 32768 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-1 control register" ]
+    pub struct Doepctl1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-1 control register" ]
+    pub mod doepctl1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepctl1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-2 control register" ]
+    pub struct Doepctl2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-2 control register" ]
+    pub mod doepctl2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepctl2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-3 control register" ]
+    pub struct Doepctl3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-3 control register" ]
+    pub mod doepctl3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepctl3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 17 - NAKSTS" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bit 16 - EONUM/DPID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - EPENA" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+            # [ doc = "Bit 30 - EPDIS" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 29 - SODDFRM" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 28 - SD0PID/SEVNFRM" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 27 - SNAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 26 - CNAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 21 - Stall" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 20 - SNPM" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bits 18:19 - EPTYP" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 15 - USBAEP" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 0:10 - MPSIZ" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-x interrupt register" ]
+    pub struct Diepint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-x interrupt register" ]
+    pub mod diepint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TXFE" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-1 interrupt register" ]
+    pub struct Diepint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-1 interrupt register" ]
+    pub mod diepint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TXFE" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-2 interrupt register" ]
+    pub struct Diepint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-2 interrupt register" ]
+    pub mod diepint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TXFE" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-3 interrupt register" ]
+    pub struct Diepint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-3 interrupt register" ]
+    pub mod diepint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Diepint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 7 - TXFE" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - INEPNE" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 4 - ITTXFE" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 3 - TOC" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-0 interrupt register" ]
+    pub struct Doepint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-0 interrupt register" ]
+    pub mod doepint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-1 interrupt register" ]
+    pub struct Doepint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-1 interrupt register" ]
+    pub mod doepint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-2 interrupt register" ]
+    pub struct Doepint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-2 interrupt register" ]
+    pub mod doepint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-3 interrupt register" ]
+    pub struct Doepint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-3 interrupt register" ]
+    pub mod doepint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doepint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 6 - B2BSTUP" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 4 - OTEPDIS" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 3 - STUP" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 1 - EPDISD" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 0 - XFRC" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-0 transfer size register" ]
+    pub struct Dieptsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-0 transfer size register" ]
+    pub mod dieptsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dieptsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u8,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u8,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 19:20 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 19:20 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device OUT endpoint-0 transfer size register" ]
+    pub struct Doeptsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device OUT endpoint-0 transfer size register" ]
+    pub mod doeptsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doeptsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupcntR {
+            bits: u8,
+        }
+        impl StupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u8,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u8,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn stupcnt(&self) -> StupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupcntR { bits }
+            }
+            # [ doc = "Bit 19 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn stupcnt(&mut self) -> _StupcntW {
+                _StupcntW { w: self }
+            }
+            # [ doc = "Bit 19 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-1 transfer size register" ]
+    pub struct Dieptsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-1 transfer size register" ]
+    pub mod dieptsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dieptsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-2 transfer size register" ]
+    pub struct Dieptsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-2 transfer size register" ]
+    pub mod dieptsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dieptsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device endpoint-3 transfer size register" ]
+    pub struct Dieptsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device endpoint-3 transfer size register" ]
+    pub mod dieptsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Dieptsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub struct Dtxfsts0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub mod dtxfsts0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dtxfsts0 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub struct Dtxfsts1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub mod dtxfsts1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dtxfsts1 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub struct Dtxfsts2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub mod dtxfsts2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dtxfsts2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub struct Dtxfsts3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS device IN endpoint transmit FIFO status register" ]
+    pub mod dtxfsts3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Dtxfsts3 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "device OUT endpoint-1 transfer size register" ]
+    pub struct Doeptsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device OUT endpoint-1 transfer size register" ]
+    pub mod doeptsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doeptsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device OUT endpoint-2 transfer size register" ]
+    pub struct Doeptsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device OUT endpoint-2 transfer size register" ]
+    pub mod doeptsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doeptsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+    # [ doc = "device OUT endpoint-3 transfer size register" ]
+    pub struct Doeptsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "device OUT endpoint-3 transfer size register" ]
+    pub mod doeptsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Doeptsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub struct OtgFsDevice {
+    register_block: otg_fs_device::RegisterBlock,
+}
+impl Deref for OtgFsDevice {
+    type Target = otg_fs_device::RegisterBlock;
+    fn deref(&self) -> &otg_fs_device::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub const OTG_FS_PWRCLK: Peripheral<OtgFsPwrclk> =
+    unsafe { Peripheral::new(1342180864) };
+# [ doc = "USB on the go full speed" ]
+pub mod otg_fs_pwrclk {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_FS power and clock gating control register" ]
+        pub fs_pcgcctl: FsPcgcctl,
+    }
+    # [ doc = "OTG_FS power and clock gating control register" ]
+    pub struct FsPcgcctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_FS power and clock gating control register" ]
+    pub mod fs_pcgcctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::FsPcgcctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StppclkR {
+            bits: u8,
+        }
+        impl StppclkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GatehclkR {
+            bits: u8,
+        }
+        impl GatehclkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PhysuspR {
+            bits: u8,
+        }
+        impl PhysuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StppclkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StppclkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GatehclkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GatehclkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PhysuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PhysuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Stop PHY clock" ]
+            # [ inline ( always ) ]
+            pub fn stppclk(&self) -> StppclkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StppclkR { bits }
+            }
+            # [ doc = "Bit 1 - Gate HCLK" ]
+            # [ inline ( always ) ]
+            pub fn gatehclk(&self) -> GatehclkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GatehclkR { bits }
+            }
+            # [ doc = "Bit 4 - PHY Suspended" ]
+            # [ inline ( always ) ]
+            pub fn physusp(&self) -> PhysuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PhysuspR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Stop PHY clock" ]
+            # [ inline ( always ) ]
+            pub fn stppclk(&mut self) -> _StppclkW {
+                _StppclkW { w: self }
+            }
+            # [ doc = "Bit 1 - Gate HCLK" ]
+            # [ inline ( always ) ]
+            pub fn gatehclk(&mut self) -> _GatehclkW {
+                _GatehclkW { w: self }
+            }
+            # [ doc = "Bit 4 - PHY Suspended" ]
+            # [ inline ( always ) ]
+            pub fn physusp(&mut self) -> _PhysuspW {
+                _PhysuspW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go full speed" ]
+pub struct OtgFsPwrclk {
+    register_block: otg_fs_pwrclk::RegisterBlock,
+}
+impl Deref for OtgFsPwrclk {
+    type Target = otg_fs_pwrclk::RegisterBlock;
+    fn deref(&self) -> &otg_fs_pwrclk::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "Controller area network" ]
+pub const CAN1: Peripheral<Can1> = unsafe { Peripheral::new(1073767424) };
+# [ doc = "Controller area network" ]
+pub mod can1 {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - master control register" ]
+        pub mcr: Mcr,
+        # [ doc = "0x04 - master status register" ]
+        pub msr: Msr,
+        # [ doc = "0x08 - transmit status register" ]
+        pub tsr: Tsr,
+        # [ doc = "0x0c - receive FIFO 0 register" ]
+        pub rf0r: Rf0r,
+        # [ doc = "0x10 - receive FIFO 1 register" ]
+        pub rf1r: Rf1r,
+        # [ doc = "0x14 - interrupt enable register" ]
+        pub ier: Ier,
+        # [ doc = "0x18 - interrupt enable register" ]
+        pub esr: Esr,
+        # [ doc = "0x1c - bit timing register" ]
+        pub btr: Btr,
+        _reserved0: [u8; 352usize],
+        # [ doc = "0x180 - TX mailbox identifier register" ]
+        pub ti0r: Ti0r,
+        # [ doc = "0x184 - mailbox data length control and time stamp register" ]
+        pub tdt0r: Tdt0r,
+        # [ doc = "0x188 - mailbox data low register" ]
+        pub tdl0r: Tdl0r,
+        # [ doc = "0x18c - mailbox data high register" ]
+        pub tdh0r: Tdh0r,
+        # [ doc = "0x190 - mailbox identifier register" ]
+        pub ti1r: Ti1r,
+        # [ doc = "0x194 - mailbox data length control and time stamp register" ]
+        pub tdt1r: Tdt1r,
+        # [ doc = "0x198 - mailbox data low register" ]
+        pub tdl1r: Tdl1r,
+        # [ doc = "0x19c - mailbox data high register" ]
+        pub tdh1r: Tdh1r,
+        # [ doc = "0x1a0 - mailbox identifier register" ]
+        pub ti2r: Ti2r,
+        # [ doc = "0x1a4 - mailbox data length control and time stamp register" ]
+        pub tdt2r: Tdt2r,
+        # [ doc = "0x1a8 - mailbox data low register" ]
+        pub tdl2r: Tdl2r,
+        # [ doc = "0x1ac - mailbox data high register" ]
+        pub tdh2r: Tdh2r,
+        # [ doc = "0x1b0 - receive FIFO mailbox identifier register" ]
+        pub ri0r: Ri0r,
+        # [ doc = "0x1b4 - mailbox data high register" ]
+        pub rdt0r: Rdt0r,
+        # [ doc = "0x1b8 - mailbox data high register" ]
+        pub rdl0r: Rdl0r,
+        # [ doc = "0x1bc - receive FIFO mailbox data high register" ]
+        pub rdh0r: Rdh0r,
+        # [ doc = "0x1c0 - mailbox data high register" ]
+        pub ri1r: Ri1r,
+        # [ doc = "0x1c4 - mailbox data high register" ]
+        pub rdt1r: Rdt1r,
+        # [ doc = "0x1c8 - mailbox data high register" ]
+        pub rdl1r: Rdl1r,
+        # [ doc = "0x1cc - mailbox data high register" ]
+        pub rdh1r: Rdh1r,
+        _reserved1: [u8; 48usize],
+        # [ doc = "0x200 - filter master register" ]
+        pub fmr: Fmr,
+        # [ doc = "0x204 - filter mode register" ]
+        pub fm1r: Fm1r,
+        _reserved2: [u8; 4usize],
+        # [ doc = "0x20c - filter scale register" ]
+        pub fs1r: Fs1r,
+        _reserved3: [u8; 4usize],
+        # [ doc = "0x214 - filter FIFO assignment register" ]
+        pub ffa1r: Ffa1r,
+        _reserved4: [u8; 4usize],
+        # [ doc = "0x21c - filter activation register" ]
+        pub fa1r: Fa1r,
+        _reserved5: [u8; 32usize],
+        # [ doc = "0x240 - Filter bank 0 register 1" ]
+        pub f0r1: F0r1,
+        # [ doc = "0x244 - Filter bank 0 register 2" ]
+        pub f0r2: F0r2,
+        # [ doc = "0x248 - Filter bank 1 register 1" ]
+        pub f1r1: F1r1,
+        # [ doc = "0x24c - Filter bank 1 register 2" ]
+        pub f1r2: F1r2,
+        # [ doc = "0x250 - Filter bank 2 register 1" ]
+        pub f2r1: F2r1,
+        # [ doc = "0x254 - Filter bank 2 register 2" ]
+        pub f2r2: F2r2,
+        # [ doc = "0x258 - Filter bank 3 register 1" ]
+        pub f3r1: F3r1,
+        # [ doc = "0x25c - Filter bank 3 register 2" ]
+        pub f3r2: F3r2,
+        # [ doc = "0x260 - Filter bank 4 register 1" ]
+        pub f4r1: F4r1,
+        # [ doc = "0x264 - Filter bank 4 register 2" ]
+        pub f4r2: F4r2,
+        # [ doc = "0x268 - Filter bank 5 register 1" ]
+        pub f5r1: F5r1,
+        # [ doc = "0x26c - Filter bank 5 register 2" ]
+        pub f5r2: F5r2,
+        # [ doc = "0x270 - Filter bank 6 register 1" ]
+        pub f6r1: F6r1,
+        # [ doc = "0x274 - Filter bank 6 register 2" ]
+        pub f6r2: F6r2,
+        # [ doc = "0x278 - Filter bank 7 register 1" ]
+        pub f7r1: F7r1,
+        # [ doc = "0x27c - Filter bank 7 register 2" ]
+        pub f7r2: F7r2,
+        # [ doc = "0x280 - Filter bank 8 register 1" ]
+        pub f8r1: F8r1,
+        # [ doc = "0x284 - Filter bank 8 register 2" ]
+        pub f8r2: F8r2,
+        # [ doc = "0x288 - Filter bank 9 register 1" ]
+        pub f9r1: F9r1,
+        # [ doc = "0x28c - Filter bank 9 register 2" ]
+        pub f9r2: F9r2,
+        # [ doc = "0x290 - Filter bank 10 register 1" ]
+        pub f10r1: F10r1,
+        # [ doc = "0x294 - Filter bank 10 register 2" ]
+        pub f10r2: F10r2,
+        # [ doc = "0x298 - Filter bank 11 register 1" ]
+        pub f11r1: F11r1,
+        # [ doc = "0x29c - Filter bank 11 register 2" ]
+        pub f11r2: F11r2,
+        # [ doc = "0x2a0 - Filter bank 4 register 1" ]
+        pub f12r1: F12r1,
+        # [ doc = "0x2a4 - Filter bank 12 register 2" ]
+        pub f12r2: F12r2,
+        # [ doc = "0x2a8 - Filter bank 13 register 1" ]
+        pub f13r1: F13r1,
+        # [ doc = "0x2ac - Filter bank 13 register 2" ]
+        pub f13r2: F13r2,
+        # [ doc = "0x2b0 - Filter bank 14 register 1" ]
+        pub f14r1: F14r1,
+        # [ doc = "0x2b4 - Filter bank 14 register 2" ]
+        pub f14r2: F14r2,
+        # [ doc = "0x2b8 - Filter bank 15 register 1" ]
+        pub f15r1: F15r1,
+        # [ doc = "0x2bc - Filter bank 15 register 2" ]
+        pub f15r2: F15r2,
+        # [ doc = "0x2c0 - Filter bank 16 register 1" ]
+        pub f16r1: F16r1,
+        # [ doc = "0x2c4 - Filter bank 16 register 2" ]
+        pub f16r2: F16r2,
+        # [ doc = "0x2c8 - Filter bank 17 register 1" ]
+        pub f17r1: F17r1,
+        # [ doc = "0x2cc - Filter bank 17 register 2" ]
+        pub f17r2: F17r2,
+        # [ doc = "0x2d0 - Filter bank 18 register 1" ]
+        pub f18r1: F18r1,
+        # [ doc = "0x2d4 - Filter bank 18 register 2" ]
+        pub f18r2: F18r2,
+        # [ doc = "0x2d8 - Filter bank 19 register 1" ]
+        pub f19r1: F19r1,
+        # [ doc = "0x2dc - Filter bank 19 register 2" ]
+        pub f19r2: F19r2,
+        # [ doc = "0x2e0 - Filter bank 20 register 1" ]
+        pub f20r1: F20r1,
+        # [ doc = "0x2e4 - Filter bank 20 register 2" ]
+        pub f20r2: F20r2,
+        # [ doc = "0x2e8 - Filter bank 21 register 1" ]
+        pub f21r1: F21r1,
+        # [ doc = "0x2ec - Filter bank 21 register 2" ]
+        pub f21r2: F21r2,
+        # [ doc = "0x2f0 - Filter bank 22 register 1" ]
+        pub f22r1: F22r1,
+        # [ doc = "0x2f4 - Filter bank 22 register 2" ]
+        pub f22r2: F22r2,
+        # [ doc = "0x2f8 - Filter bank 23 register 1" ]
+        pub f23r1: F23r1,
+        # [ doc = "0x2fc - Filter bank 23 register 2" ]
+        pub f23r2: F23r2,
+        # [ doc = "0x300 - Filter bank 24 register 1" ]
+        pub f24r1: F24r1,
+        # [ doc = "0x304 - Filter bank 24 register 2" ]
+        pub f24r2: F24r2,
+        # [ doc = "0x308 - Filter bank 25 register 1" ]
+        pub f25r1: F25r1,
+        # [ doc = "0x30c - Filter bank 25 register 2" ]
+        pub f25r2: F25r2,
+        # [ doc = "0x310 - Filter bank 26 register 1" ]
+        pub f26r1: F26r1,
+        # [ doc = "0x314 - Filter bank 26 register 2" ]
+        pub f26r2: F26r2,
+        # [ doc = "0x318 - Filter bank 27 register 1" ]
+        pub f27r1: F27r1,
+        # [ doc = "0x31c - Filter bank 27 register 2" ]
+        pub f27r2: F27r2,
+    }
+    # [ doc = "master control register" ]
+    pub struct Mcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "master control register" ]
+    pub mod mcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Mcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbfR {
+            bits: u8,
+        }
+        impl DbfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ResetR {
+            bits: u8,
+        }
+        impl ResetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TtcmR {
+            bits: u8,
+        }
+        impl TtcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AbomR {
+            bits: u8,
+        }
+        impl AbomR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AwumR {
+            bits: u8,
+        }
+        impl AwumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NartR {
+            bits: u8,
+        }
+        impl NartR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RflmR {
+            bits: u8,
+        }
+        impl RflmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfpR {
+            bits: u8,
+        }
+        impl TxfpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SleepR {
+            bits: u8,
+        }
+        impl SleepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InrqR {
+            bits: u8,
+        }
+        impl InrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ResetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ResetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TtcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TtcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AbomW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AbomW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AwumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AwumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NartW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NartW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RflmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RflmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SleepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SleepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - DBF" ]
+            # [ inline ( always ) ]
+            pub fn dbf(&self) -> DbfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbfR { bits }
+            }
+            # [ doc = "Bit 15 - RESET" ]
+            # [ inline ( always ) ]
+            pub fn reset(&self) -> ResetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ResetR { bits }
+            }
+            # [ doc = "Bit 7 - TTCM" ]
+            # [ inline ( always ) ]
+            pub fn ttcm(&self) -> TtcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TtcmR { bits }
+            }
+            # [ doc = "Bit 6 - ABOM" ]
+            # [ inline ( always ) ]
+            pub fn abom(&self) -> AbomR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AbomR { bits }
+            }
+            # [ doc = "Bit 5 - AWUM" ]
+            # [ inline ( always ) ]
+            pub fn awum(&self) -> AwumR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AwumR { bits }
+            }
+            # [ doc = "Bit 4 - NART" ]
+            # [ inline ( always ) ]
+            pub fn nart(&self) -> NartR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NartR { bits }
+            }
+            # [ doc = "Bit 3 - RFLM" ]
+            # [ inline ( always ) ]
+            pub fn rflm(&self) -> RflmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RflmR { bits }
+            }
+            # [ doc = "Bit 2 - TXFP" ]
+            # [ inline ( always ) ]
+            pub fn txfp(&self) -> TxfpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfpR { bits }
+            }
+            # [ doc = "Bit 1 - SLEEP" ]
+            # [ inline ( always ) ]
+            pub fn sleep(&self) -> SleepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SleepR { bits }
+            }
+            # [ doc = "Bit 0 - INRQ" ]
+            # [ inline ( always ) ]
+            pub fn inrq(&self) -> InrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InrqR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 65538 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - DBF" ]
+            # [ inline ( always ) ]
+            pub fn dbf(&mut self) -> _DbfW {
+                _DbfW { w: self }
+            }
+            # [ doc = "Bit 15 - RESET" ]
+            # [ inline ( always ) ]
+            pub fn reset(&mut self) -> _ResetW {
+                _ResetW { w: self }
+            }
+            # [ doc = "Bit 7 - TTCM" ]
+            # [ inline ( always ) ]
+            pub fn ttcm(&mut self) -> _TtcmW {
+                _TtcmW { w: self }
+            }
+            # [ doc = "Bit 6 - ABOM" ]
+            # [ inline ( always ) ]
+            pub fn abom(&mut self) -> _AbomW {
+                _AbomW { w: self }
+            }
+            # [ doc = "Bit 5 - AWUM" ]
+            # [ inline ( always ) ]
+            pub fn awum(&mut self) -> _AwumW {
+                _AwumW { w: self }
+            }
+            # [ doc = "Bit 4 - NART" ]
+            # [ inline ( always ) ]
+            pub fn nart(&mut self) -> _NartW {
+                _NartW { w: self }
+            }
+            # [ doc = "Bit 3 - RFLM" ]
+            # [ inline ( always ) ]
+            pub fn rflm(&mut self) -> _RflmW {
+                _RflmW { w: self }
+            }
+            # [ doc = "Bit 2 - TXFP" ]
+            # [ inline ( always ) ]
+            pub fn txfp(&mut self) -> _TxfpW {
+                _TxfpW { w: self }
+            }
+            # [ doc = "Bit 1 - SLEEP" ]
+            # [ inline ( always ) ]
+            pub fn sleep(&mut self) -> _SleepW {
+                _SleepW { w: self }
+            }
+            # [ doc = "Bit 0 - INRQ" ]
+            # [ inline ( always ) ]
+            pub fn inrq(&mut self) -> _InrqW {
+                _InrqW { w: self }
+            }
+        }
+    }
+    # [ doc = "master status register" ]
+    pub struct Msr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "master status register" ]
+    pub mod msr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Msr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxR {
+            bits: u8,
+        }
+        impl RxR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SampR {
+            bits: u8,
+        }
+        impl SampR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxmR {
+            bits: u8,
+        }
+        impl RxmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxmR {
+            bits: u8,
+        }
+        impl TxmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SlakiR {
+            bits: u8,
+        }
+        impl SlakiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WkuiR {
+            bits: u8,
+        }
+        impl WkuiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErriR {
+            bits: u8,
+        }
+        impl ErriR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SlakR {
+            bits: u8,
+        }
+        impl SlakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InakR {
+            bits: u8,
+        }
+        impl InakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SlakiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SlakiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WkuiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WkuiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErriW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErriW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 11 - RX" ]
+            # [ inline ( always ) ]
+            pub fn rx(&self) -> RxR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxR { bits }
+            }
+            # [ doc = "Bit 10 - SAMP" ]
+            # [ inline ( always ) ]
+            pub fn samp(&self) -> SampR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SampR { bits }
+            }
+            # [ doc = "Bit 9 - RXM" ]
+            # [ inline ( always ) ]
+            pub fn rxm(&self) -> RxmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxmR { bits }
+            }
+            # [ doc = "Bit 8 - TXM" ]
+            # [ inline ( always ) ]
+            pub fn txm(&self) -> TxmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxmR { bits }
+            }
+            # [ doc = "Bit 4 - SLAKI" ]
+            # [ inline ( always ) ]
+            pub fn slaki(&self) -> SlakiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SlakiR { bits }
+            }
+            # [ doc = "Bit 3 - WKUI" ]
+            # [ inline ( always ) ]
+            pub fn wkui(&self) -> WkuiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WkuiR { bits }
+            }
+            # [ doc = "Bit 2 - ERRI" ]
+            # [ inline ( always ) ]
+            pub fn erri(&self) -> ErriR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErriR { bits }
+            }
+            # [ doc = "Bit 1 - SLAK" ]
+            # [ inline ( always ) ]
+            pub fn slak(&self) -> SlakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SlakR { bits }
+            }
+            # [ doc = "Bit 0 - INAK" ]
+            # [ inline ( always ) ]
+            pub fn inak(&self) -> InakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 3074 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 4 - SLAKI" ]
+            # [ inline ( always ) ]
+            pub fn slaki(&mut self) -> _SlakiW {
+                _SlakiW { w: self }
+            }
+            # [ doc = "Bit 3 - WKUI" ]
+            # [ inline ( always ) ]
+            pub fn wkui(&mut self) -> _WkuiW {
+                _WkuiW { w: self }
+            }
+            # [ doc = "Bit 2 - ERRI" ]
+            # [ inline ( always ) ]
+            pub fn erri(&mut self) -> _ErriW {
+                _ErriW { w: self }
+            }
+        }
+    }
+    # [ doc = "transmit status register" ]
+    pub struct Tsr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "transmit status register" ]
+    pub mod tsr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tsr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Low2R {
+            bits: u8,
+        }
+        impl Low2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Low1R {
+            bits: u8,
+        }
+        impl Low1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Low0R {
+            bits: u8,
+        }
+        impl Low0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tme2R {
+            bits: u8,
+        }
+        impl Tme2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tme1R {
+            bits: u8,
+        }
+        impl Tme1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tme0R {
+            bits: u8,
+        }
+        impl Tme0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CodeR {
+            bits: u8,
+        }
+        impl CodeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Abrq2R {
+            bits: u8,
+        }
+        impl Abrq2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Terr2R {
+            bits: u8,
+        }
+        impl Terr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Alst2R {
+            bits: u8,
+        }
+        impl Alst2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Txok2R {
+            bits: u8,
+        }
+        impl Txok2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rqcp2R {
+            bits: u8,
+        }
+        impl Rqcp2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Abrq1R {
+            bits: u8,
+        }
+        impl Abrq1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Terr1R {
+            bits: u8,
+        }
+        impl Terr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Alst1R {
+            bits: u8,
+        }
+        impl Alst1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Txok1R {
+            bits: u8,
+        }
+        impl Txok1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rqcp1R {
+            bits: u8,
+        }
+        impl Rqcp1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Abrq0R {
+            bits: u8,
+        }
+        impl Abrq0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Terr0R {
+            bits: u8,
+        }
+        impl Terr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Alst0R {
+            bits: u8,
+        }
+        impl Alst0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Txok0R {
+            bits: u8,
+        }
+        impl Txok0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rqcp0R {
+            bits: u8,
+        }
+        impl Rqcp0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Abrq2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Abrq2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Terr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Terr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Alst2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Alst2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Txok2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Txok2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rqcp2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rqcp2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Abrq1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Abrq1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Terr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Terr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Alst1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Alst1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Txok1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Txok1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rqcp1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rqcp1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Abrq0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Abrq0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Terr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Terr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Alst0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Alst0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Txok0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Txok0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rqcp0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rqcp0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - Lowest priority flag for mailbox 2" ]
+            # [ inline ( always ) ]
+            pub fn low2(&self) -> Low2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Low2R { bits }
+            }
+            # [ doc = "Bit 30 - Lowest priority flag for mailbox 1" ]
+            # [ inline ( always ) ]
+            pub fn low1(&self) -> Low1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Low1R { bits }
+            }
+            # [ doc = "Bit 29 - Lowest priority flag for mailbox 0" ]
+            # [ inline ( always ) ]
+            pub fn low0(&self) -> Low0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Low0R { bits }
+            }
+            # [ doc = "Bit 28 - Lowest priority flag for mailbox 2" ]
+            # [ inline ( always ) ]
+            pub fn tme2(&self) -> Tme2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tme2R { bits }
+            }
+            # [ doc = "Bit 27 - Lowest priority flag for mailbox 1" ]
+            # [ inline ( always ) ]
+            pub fn tme1(&self) -> Tme1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tme1R { bits }
+            }
+            # [ doc = "Bit 26 - Lowest priority flag for mailbox 0" ]
+            # [ inline ( always ) ]
+            pub fn tme0(&self) -> Tme0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tme0R { bits }
+            }
+            # [ doc = "Bits 24:25 - CODE" ]
+            # [ inline ( always ) ]
+            pub fn code(&self) -> CodeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CodeR { bits }
+            }
+            # [ doc = "Bit 23 - ABRQ2" ]
+            # [ inline ( always ) ]
+            pub fn abrq2(&self) -> Abrq2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Abrq2R { bits }
+            }
+            # [ doc = "Bit 19 - TERR2" ]
+            # [ inline ( always ) ]
+            pub fn terr2(&self) -> Terr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Terr2R { bits }
+            }
+            # [ doc = "Bit 18 - ALST2" ]
+            # [ inline ( always ) ]
+            pub fn alst2(&self) -> Alst2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Alst2R { bits }
+            }
+            # [ doc = "Bit 17 - TXOK2" ]
+            # [ inline ( always ) ]
+            pub fn txok2(&self) -> Txok2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Txok2R { bits }
+            }
+            # [ doc = "Bit 16 - RQCP2" ]
+            # [ inline ( always ) ]
+            pub fn rqcp2(&self) -> Rqcp2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rqcp2R { bits }
+            }
+            # [ doc = "Bit 15 - ABRQ1" ]
+            # [ inline ( always ) ]
+            pub fn abrq1(&self) -> Abrq1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Abrq1R { bits }
+            }
+            # [ doc = "Bit 11 - TERR1" ]
+            # [ inline ( always ) ]
+            pub fn terr1(&self) -> Terr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Terr1R { bits }
+            }
+            # [ doc = "Bit 10 - ALST1" ]
+            # [ inline ( always ) ]
+            pub fn alst1(&self) -> Alst1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Alst1R { bits }
+            }
+            # [ doc = "Bit 9 - TXOK1" ]
+            # [ inline ( always ) ]
+            pub fn txok1(&self) -> Txok1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Txok1R { bits }
+            }
+            # [ doc = "Bit 8 - RQCP1" ]
+            # [ inline ( always ) ]
+            pub fn rqcp1(&self) -> Rqcp1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rqcp1R { bits }
+            }
+            # [ doc = "Bit 7 - ABRQ0" ]
+            # [ inline ( always ) ]
+            pub fn abrq0(&self) -> Abrq0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Abrq0R { bits }
+            }
+            # [ doc = "Bit 3 - TERR0" ]
+            # [ inline ( always ) ]
+            pub fn terr0(&self) -> Terr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Terr0R { bits }
+            }
+            # [ doc = "Bit 2 - ALST0" ]
+            # [ inline ( always ) ]
+            pub fn alst0(&self) -> Alst0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Alst0R { bits }
+            }
+            # [ doc = "Bit 1 - TXOK0" ]
+            # [ inline ( always ) ]
+            pub fn txok0(&self) -> Txok0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Txok0R { bits }
+            }
+            # [ doc = "Bit 0 - RQCP0" ]
+            # [ inline ( always ) ]
+            pub fn rqcp0(&self) -> Rqcp0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rqcp0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 469762048 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 23 - ABRQ2" ]
+            # [ inline ( always ) ]
+            pub fn abrq2(&mut self) -> _Abrq2W {
+                _Abrq2W { w: self }
+            }
+            # [ doc = "Bit 19 - TERR2" ]
+            # [ inline ( always ) ]
+            pub fn terr2(&mut self) -> _Terr2W {
+                _Terr2W { w: self }
+            }
+            # [ doc = "Bit 18 - ALST2" ]
+            # [ inline ( always ) ]
+            pub fn alst2(&mut self) -> _Alst2W {
+                _Alst2W { w: self }
+            }
+            # [ doc = "Bit 17 - TXOK2" ]
+            # [ inline ( always ) ]
+            pub fn txok2(&mut self) -> _Txok2W {
+                _Txok2W { w: self }
+            }
+            # [ doc = "Bit 16 - RQCP2" ]
+            # [ inline ( always ) ]
+            pub fn rqcp2(&mut self) -> _Rqcp2W {
+                _Rqcp2W { w: self }
+            }
+            # [ doc = "Bit 15 - ABRQ1" ]
+            # [ inline ( always ) ]
+            pub fn abrq1(&mut self) -> _Abrq1W {
+                _Abrq1W { w: self }
+            }
+            # [ doc = "Bit 11 - TERR1" ]
+            # [ inline ( always ) ]
+            pub fn terr1(&mut self) -> _Terr1W {
+                _Terr1W { w: self }
+            }
+            # [ doc = "Bit 10 - ALST1" ]
+            # [ inline ( always ) ]
+            pub fn alst1(&mut self) -> _Alst1W {
+                _Alst1W { w: self }
+            }
+            # [ doc = "Bit 9 - TXOK1" ]
+            # [ inline ( always ) ]
+            pub fn txok1(&mut self) -> _Txok1W {
+                _Txok1W { w: self }
+            }
+            # [ doc = "Bit 8 - RQCP1" ]
+            # [ inline ( always ) ]
+            pub fn rqcp1(&mut self) -> _Rqcp1W {
+                _Rqcp1W { w: self }
+            }
+            # [ doc = "Bit 7 - ABRQ0" ]
+            # [ inline ( always ) ]
+            pub fn abrq0(&mut self) -> _Abrq0W {
+                _Abrq0W { w: self }
+            }
+            # [ doc = "Bit 3 - TERR0" ]
+            # [ inline ( always ) ]
+            pub fn terr0(&mut self) -> _Terr0W {
+                _Terr0W { w: self }
+            }
+            # [ doc = "Bit 2 - ALST0" ]
+            # [ inline ( always ) ]
+            pub fn alst0(&mut self) -> _Alst0W {
+                _Alst0W { w: self }
+            }
+            # [ doc = "Bit 1 - TXOK0" ]
+            # [ inline ( always ) ]
+            pub fn txok0(&mut self) -> _Txok0W {
+                _Txok0W { w: self }
+            }
+            # [ doc = "Bit 0 - RQCP0" ]
+            # [ inline ( always ) ]
+            pub fn rqcp0(&mut self) -> _Rqcp0W {
+                _Rqcp0W { w: self }
+            }
+        }
+    }
+    # [ doc = "receive FIFO 0 register" ]
+    pub struct Rf0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "receive FIFO 0 register" ]
+    pub mod rf0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Rf0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rfom0R {
+            bits: u8,
+        }
+        impl Rfom0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fovr0R {
+            bits: u8,
+        }
+        impl Fovr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Full0R {
+            bits: u8,
+        }
+        impl Full0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fmp0R {
+            bits: u8,
+        }
+        impl Fmp0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rfom0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rfom0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fovr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fovr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Full0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Full0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 5 - RFOM0" ]
+            # [ inline ( always ) ]
+            pub fn rfom0(&self) -> Rfom0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rfom0R { bits }
+            }
+            # [ doc = "Bit 4 - FOVR0" ]
+            # [ inline ( always ) ]
+            pub fn fovr0(&self) -> Fovr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fovr0R { bits }
+            }
+            # [ doc = "Bit 3 - FULL0" ]
+            # [ inline ( always ) ]
+            pub fn full0(&self) -> Full0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Full0R { bits }
+            }
+            # [ doc = "Bits 0:1 - FMP0" ]
+            # [ inline ( always ) ]
+            pub fn fmp0(&self) -> Fmp0R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fmp0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - RFOM0" ]
+            # [ inline ( always ) ]
+            pub fn rfom0(&mut self) -> _Rfom0W {
+                _Rfom0W { w: self }
+            }
+            # [ doc = "Bit 4 - FOVR0" ]
+            # [ inline ( always ) ]
+            pub fn fovr0(&mut self) -> _Fovr0W {
+                _Fovr0W { w: self }
+            }
+            # [ doc = "Bit 3 - FULL0" ]
+            # [ inline ( always ) ]
+            pub fn full0(&mut self) -> _Full0W {
+                _Full0W { w: self }
+            }
+        }
+    }
+    # [ doc = "receive FIFO 1 register" ]
+    pub struct Rf1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "receive FIFO 1 register" ]
+    pub mod rf1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Rf1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Rfom1R {
+            bits: u8,
+        }
+        impl Rfom1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fovr1R {
+            bits: u8,
+        }
+        impl Fovr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Full1R {
+            bits: u8,
+        }
+        impl Full1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fmp1R {
+            bits: u8,
+        }
+        impl Fmp1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Rfom1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Rfom1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fovr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fovr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Full1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Full1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 5 - RFOM1" ]
+            # [ inline ( always ) ]
+            pub fn rfom1(&self) -> Rfom1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Rfom1R { bits }
+            }
+            # [ doc = "Bit 4 - FOVR1" ]
+            # [ inline ( always ) ]
+            pub fn fovr1(&self) -> Fovr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fovr1R { bits }
+            }
+            # [ doc = "Bit 3 - FULL1" ]
+            # [ inline ( always ) ]
+            pub fn full1(&self) -> Full1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Full1R { bits }
+            }
+            # [ doc = "Bits 0:1 - FMP1" ]
+            # [ inline ( always ) ]
+            pub fn fmp1(&self) -> Fmp1R {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fmp1R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 5 - RFOM1" ]
+            # [ inline ( always ) ]
+            pub fn rfom1(&mut self) -> _Rfom1W {
+                _Rfom1W { w: self }
+            }
+            # [ doc = "Bit 4 - FOVR1" ]
+            # [ inline ( always ) ]
+            pub fn fovr1(&mut self) -> _Fovr1W {
+                _Fovr1W { w: self }
+            }
+            # [ doc = "Bit 3 - FULL1" ]
+            # [ inline ( always ) ]
+            pub fn full1(&mut self) -> _Full1W {
+                _Full1W { w: self }
+            }
+        }
+    }
+    # [ doc = "interrupt enable register" ]
+    pub struct Ier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "interrupt enable register" ]
+    pub mod ier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SlkieR {
+            bits: u8,
+        }
+        impl SlkieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WkuieR {
+            bits: u8,
+        }
+        impl WkuieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrieR {
+            bits: u8,
+        }
+        impl ErrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LecieR {
+            bits: u8,
+        }
+        impl LecieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BofieR {
+            bits: u8,
+        }
+        impl BofieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpvieR {
+            bits: u8,
+        }
+        impl EpvieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EwgieR {
+            bits: u8,
+        }
+        impl EwgieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fovie1R {
+            bits: u8,
+        }
+        impl Fovie1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffie1R {
+            bits: u8,
+        }
+        impl Ffie1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fmpie1R {
+            bits: u8,
+        }
+        impl Fmpie1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fovie0R {
+            bits: u8,
+        }
+        impl Fovie0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffie0R {
+            bits: u8,
+        }
+        impl Ffie0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fmpie0R {
+            bits: u8,
+        }
+        impl Fmpie0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TmeieR {
+            bits: u8,
+        }
+        impl TmeieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SlkieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SlkieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WkuieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WkuieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LecieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LecieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BofieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BofieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpvieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpvieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EwgieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EwgieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fovie1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fovie1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffie1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffie1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fmpie1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fmpie1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fovie0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fovie0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffie0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffie0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fmpie0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fmpie0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TmeieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TmeieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 17 - SLKIE" ]
+            # [ inline ( always ) ]
+            pub fn slkie(&self) -> SlkieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SlkieR { bits }
+            }
+            # [ doc = "Bit 16 - WKUIE" ]
+            # [ inline ( always ) ]
+            pub fn wkuie(&self) -> WkuieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WkuieR { bits }
+            }
+            # [ doc = "Bit 15 - ERRIE" ]
+            # [ inline ( always ) ]
+            pub fn errie(&self) -> ErrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrieR { bits }
+            }
+            # [ doc = "Bit 11 - LECIE" ]
+            # [ inline ( always ) ]
+            pub fn lecie(&self) -> LecieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LecieR { bits }
+            }
+            # [ doc = "Bit 10 - BOFIE" ]
+            # [ inline ( always ) ]
+            pub fn bofie(&self) -> BofieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BofieR { bits }
+            }
+            # [ doc = "Bit 9 - EPVIE" ]
+            # [ inline ( always ) ]
+            pub fn epvie(&self) -> EpvieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpvieR { bits }
+            }
+            # [ doc = "Bit 8 - EWGIE" ]
+            # [ inline ( always ) ]
+            pub fn ewgie(&self) -> EwgieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EwgieR { bits }
+            }
+            # [ doc = "Bit 6 - FOVIE1" ]
+            # [ inline ( always ) ]
+            pub fn fovie1(&self) -> Fovie1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fovie1R { bits }
+            }
+            # [ doc = "Bit 5 - FFIE1" ]
+            # [ inline ( always ) ]
+            pub fn ffie1(&self) -> Ffie1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffie1R { bits }
+            }
+            # [ doc = "Bit 4 - FMPIE1" ]
+            # [ inline ( always ) ]
+            pub fn fmpie1(&self) -> Fmpie1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fmpie1R { bits }
+            }
+            # [ doc = "Bit 3 - FOVIE0" ]
+            # [ inline ( always ) ]
+            pub fn fovie0(&self) -> Fovie0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fovie0R { bits }
+            }
+            # [ doc = "Bit 2 - FFIE0" ]
+            # [ inline ( always ) ]
+            pub fn ffie0(&self) -> Ffie0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffie0R { bits }
+            }
+            # [ doc = "Bit 1 - FMPIE0" ]
+            # [ inline ( always ) ]
+            pub fn fmpie0(&self) -> Fmpie0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fmpie0R { bits }
+            }
+            # [ doc = "Bit 0 - TMEIE" ]
+            # [ inline ( always ) ]
+            pub fn tmeie(&self) -> TmeieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TmeieR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 17 - SLKIE" ]
+            # [ inline ( always ) ]
+            pub fn slkie(&mut self) -> _SlkieW {
+                _SlkieW { w: self }
+            }
+            # [ doc = "Bit 16 - WKUIE" ]
+            # [ inline ( always ) ]
+            pub fn wkuie(&mut self) -> _WkuieW {
+                _WkuieW { w: self }
+            }
+            # [ doc = "Bit 15 - ERRIE" ]
+            # [ inline ( always ) ]
+            pub fn errie(&mut self) -> _ErrieW {
+                _ErrieW { w: self }
+            }
+            # [ doc = "Bit 11 - LECIE" ]
+            # [ inline ( always ) ]
+            pub fn lecie(&mut self) -> _LecieW {
+                _LecieW { w: self }
+            }
+            # [ doc = "Bit 10 - BOFIE" ]
+            # [ inline ( always ) ]
+            pub fn bofie(&mut self) -> _BofieW {
+                _BofieW { w: self }
+            }
+            # [ doc = "Bit 9 - EPVIE" ]
+            # [ inline ( always ) ]
+            pub fn epvie(&mut self) -> _EpvieW {
+                _EpvieW { w: self }
+            }
+            # [ doc = "Bit 8 - EWGIE" ]
+            # [ inline ( always ) ]
+            pub fn ewgie(&mut self) -> _EwgieW {
+                _EwgieW { w: self }
+            }
+            # [ doc = "Bit 6 - FOVIE1" ]
+            # [ inline ( always ) ]
+            pub fn fovie1(&mut self) -> _Fovie1W {
+                _Fovie1W { w: self }
+            }
+            # [ doc = "Bit 5 - FFIE1" ]
+            # [ inline ( always ) ]
+            pub fn ffie1(&mut self) -> _Ffie1W {
+                _Ffie1W { w: self }
+            }
+            # [ doc = "Bit 4 - FMPIE1" ]
+            # [ inline ( always ) ]
+            pub fn fmpie1(&mut self) -> _Fmpie1W {
+                _Fmpie1W { w: self }
+            }
+            # [ doc = "Bit 3 - FOVIE0" ]
+            # [ inline ( always ) ]
+            pub fn fovie0(&mut self) -> _Fovie0W {
+                _Fovie0W { w: self }
+            }
+            # [ doc = "Bit 2 - FFIE0" ]
+            # [ inline ( always ) ]
+            pub fn ffie0(&mut self) -> _Ffie0W {
+                _Ffie0W { w: self }
+            }
+            # [ doc = "Bit 1 - FMPIE0" ]
+            # [ inline ( always ) ]
+            pub fn fmpie0(&mut self) -> _Fmpie0W {
+                _Fmpie0W { w: self }
+            }
+            # [ doc = "Bit 0 - TMEIE" ]
+            # [ inline ( always ) ]
+            pub fn tmeie(&mut self) -> _TmeieW {
+                _TmeieW { w: self }
+            }
+        }
+    }
+    # [ doc = "interrupt enable register" ]
+    pub struct Esr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "interrupt enable register" ]
+    pub mod esr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Esr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RecR {
+            bits: u8,
+        }
+        impl RecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TecR {
+            bits: u8,
+        }
+        impl TecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LecR {
+            bits: u8,
+        }
+        impl LecR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BoffR {
+            bits: u8,
+        }
+        impl BoffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpvfR {
+            bits: u8,
+        }
+        impl EpvfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EwgfR {
+            bits: u8,
+        }
+        impl EwgfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LecW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LecW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - REC" ]
+            # [ inline ( always ) ]
+            pub fn rec(&self) -> RecR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RecR { bits }
+            }
+            # [ doc = "Bits 16:23 - TEC" ]
+            # [ inline ( always ) ]
+            pub fn tec(&self) -> TecR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TecR { bits }
+            }
+            # [ doc = "Bits 4:6 - LEC" ]
+            # [ inline ( always ) ]
+            pub fn lec(&self) -> LecR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LecR { bits }
+            }
+            # [ doc = "Bit 2 - BOFF" ]
+            # [ inline ( always ) ]
+            pub fn boff(&self) -> BoffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BoffR { bits }
+            }
+            # [ doc = "Bit 1 - EPVF" ]
+            # [ inline ( always ) ]
+            pub fn epvf(&self) -> EpvfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpvfR { bits }
+            }
+            # [ doc = "Bit 0 - EWGF" ]
+            # [ inline ( always ) ]
+            pub fn ewgf(&self) -> EwgfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EwgfR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 4:6 - LEC" ]
+            # [ inline ( always ) ]
+            pub fn lec(&mut self) -> _LecW {
+                _LecW { w: self }
+            }
+        }
+    }
+    # [ doc = "bit timing register" ]
+    pub struct Btr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "bit timing register" ]
+    pub mod btr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Btr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SilmR {
+            bits: u8,
+        }
+        impl SilmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LbkmR {
+            bits: u8,
+        }
+        impl LbkmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SjwR {
+            bits: u8,
+        }
+        impl SjwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ts2R {
+            bits: u8,
+        }
+        impl Ts2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ts1R {
+            bits: u8,
+        }
+        impl Ts1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BrpR {
+            bits: u16,
+        }
+        impl BrpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SilmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SilmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LbkmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LbkmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SjwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SjwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ts2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ts2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ts1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ts1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BrpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BrpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 31 - SILM" ]
+            # [ inline ( always ) ]
+            pub fn silm(&self) -> SilmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SilmR { bits }
+            }
+            # [ doc = "Bit 30 - LBKM" ]
+            # [ inline ( always ) ]
+            pub fn lbkm(&self) -> LbkmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LbkmR { bits }
+            }
+            # [ doc = "Bits 24:25 - SJW" ]
+            # [ inline ( always ) ]
+            pub fn sjw(&self) -> SjwR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SjwR { bits }
+            }
+            # [ doc = "Bits 20:22 - TS2" ]
+            # [ inline ( always ) ]
+            pub fn ts2(&self) -> Ts2R {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ts2R { bits }
+            }
+            # [ doc = "Bits 16:19 - TS1" ]
+            # [ inline ( always ) ]
+            pub fn ts1(&self) -> Ts1R {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ts1R { bits }
+            }
+            # [ doc = "Bits 0:9 - BRP" ]
+            # [ inline ( always ) ]
+            pub fn brp(&self) -> BrpR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BrpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 31 - SILM" ]
+            # [ inline ( always ) ]
+            pub fn silm(&mut self) -> _SilmW {
+                _SilmW { w: self }
+            }
+            # [ doc = "Bit 30 - LBKM" ]
+            # [ inline ( always ) ]
+            pub fn lbkm(&mut self) -> _LbkmW {
+                _LbkmW { w: self }
+            }
+            # [ doc = "Bits 24:25 - SJW" ]
+            # [ inline ( always ) ]
+            pub fn sjw(&mut self) -> _SjwW {
+                _SjwW { w: self }
+            }
+            # [ doc = "Bits 20:22 - TS2" ]
+            # [ inline ( always ) ]
+            pub fn ts2(&mut self) -> _Ts2W {
+                _Ts2W { w: self }
+            }
+            # [ doc = "Bits 16:19 - TS1" ]
+            # [ inline ( always ) ]
+            pub fn ts1(&mut self) -> _Ts1W {
+                _Ts1W { w: self }
+            }
+            # [ doc = "Bits 0:9 - BRP" ]
+            # [ inline ( always ) ]
+            pub fn brp(&mut self) -> _BrpW {
+                _BrpW { w: self }
+            }
+        }
+    }
+    # [ doc = "TX mailbox identifier register" ]
+    pub struct Ti0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "TX mailbox identifier register" ]
+    pub mod ti0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ti0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StidR {
+            bits: u16,
+        }
+        impl StidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExidR {
+            bits: u32,
+        }
+        impl ExidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdeR {
+            bits: u8,
+        }
+        impl IdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtrR {
+            bits: u8,
+        }
+        impl RtrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxrqR {
+            bits: u8,
+        }
+        impl TxrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 262143;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&self) -> StidR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                StidR { bits }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&self) -> ExidR {
+                let bits = {
+                    const MASK: u32 = 262143;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ExidR { bits }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&self) -> IdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdeR { bits }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&self) -> RtrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtrR { bits }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&self) -> TxrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxrqR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&mut self) -> _StidW {
+                _StidW { w: self }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&mut self) -> _ExidW {
+                _ExidW { w: self }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&mut self) -> _IdeW {
+                _IdeW { w: self }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&mut self) -> _RtrW {
+                _RtrW { w: self }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&mut self) -> _TxrqW {
+                _TxrqW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub struct Tdt0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub mod tdt0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdt0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeR {
+            bits: u16,
+        }
+        impl TimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgtR {
+            bits: u8,
+        }
+        impl TgtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DlcR {
+            bits: u8,
+        }
+        impl DlcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TimeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TimeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DlcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DlcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&self) -> TimeR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TimeR { bits }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&self) -> TgtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgtR { bits }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&self) -> DlcR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DlcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&mut self) -> _TimeW {
+                _TimeW { w: self }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&mut self) -> _TgtW {
+                _TgtW { w: self }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&mut self) -> _DlcW {
+                _DlcW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data low register" ]
+    pub struct Tdl0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data low register" ]
+    pub mod tdl0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdl0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data3R {
+            bits: u8,
+        }
+        impl Data3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u8,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u8,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data0R {
+            bits: u8,
+        }
+        impl Data0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&self) -> Data3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data3R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data1R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&self) -> Data0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&mut self) -> _Data3W {
+                _Data3W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&mut self) -> _Data2W {
+                _Data2W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&mut self) -> _Data1W {
+                _Data1W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&mut self) -> _Data0W {
+                _Data0W { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Tdh0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod tdh0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdh0r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data7R {
+            bits: u8,
+        }
+        impl Data7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data6R {
+            bits: u8,
+        }
+        impl Data6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data5R {
+            bits: u8,
+        }
+        impl Data5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data4R {
+            bits: u8,
+        }
+        impl Data4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&self) -> Data7R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data7R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&self) -> Data6R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data6R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&self) -> Data5R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data5R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&self) -> Data4R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&mut self) -> _Data7W {
+                _Data7W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&mut self) -> _Data6W {
+                _Data6W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&mut self) -> _Data5W {
+                _Data5W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&mut self) -> _Data4W {
+                _Data4W { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox identifier register" ]
+    pub struct Ti1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox identifier register" ]
+    pub mod ti1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ti1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StidR {
+            bits: u16,
+        }
+        impl StidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExidR {
+            bits: u32,
+        }
+        impl ExidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdeR {
+            bits: u8,
+        }
+        impl IdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtrR {
+            bits: u8,
+        }
+        impl RtrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxrqR {
+            bits: u8,
+        }
+        impl TxrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 262143;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&self) -> StidR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                StidR { bits }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&self) -> ExidR {
+                let bits = {
+                    const MASK: u32 = 262143;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ExidR { bits }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&self) -> IdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdeR { bits }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&self) -> RtrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtrR { bits }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&self) -> TxrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxrqR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&mut self) -> _StidW {
+                _StidW { w: self }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&mut self) -> _ExidW {
+                _ExidW { w: self }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&mut self) -> _IdeW {
+                _IdeW { w: self }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&mut self) -> _RtrW {
+                _RtrW { w: self }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&mut self) -> _TxrqW {
+                _TxrqW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub struct Tdt1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub mod tdt1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdt1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeR {
+            bits: u16,
+        }
+        impl TimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgtR {
+            bits: u8,
+        }
+        impl TgtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DlcR {
+            bits: u8,
+        }
+        impl DlcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TimeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TimeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DlcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DlcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&self) -> TimeR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TimeR { bits }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&self) -> TgtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgtR { bits }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&self) -> DlcR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DlcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&mut self) -> _TimeW {
+                _TimeW { w: self }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&mut self) -> _TgtW {
+                _TgtW { w: self }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&mut self) -> _DlcW {
+                _DlcW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data low register" ]
+    pub struct Tdl1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data low register" ]
+    pub mod tdl1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdl1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data3R {
+            bits: u8,
+        }
+        impl Data3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u8,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u8,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data0R {
+            bits: u8,
+        }
+        impl Data0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&self) -> Data3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data3R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data1R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&self) -> Data0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&mut self) -> _Data3W {
+                _Data3W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&mut self) -> _Data2W {
+                _Data2W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&mut self) -> _Data1W {
+                _Data1W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&mut self) -> _Data0W {
+                _Data0W { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Tdh1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod tdh1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdh1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data7R {
+            bits: u8,
+        }
+        impl Data7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data6R {
+            bits: u8,
+        }
+        impl Data6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data5R {
+            bits: u8,
+        }
+        impl Data5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data4R {
+            bits: u8,
+        }
+        impl Data4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&self) -> Data7R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data7R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&self) -> Data6R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data6R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&self) -> Data5R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data5R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&self) -> Data4R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&mut self) -> _Data7W {
+                _Data7W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&mut self) -> _Data6W {
+                _Data6W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&mut self) -> _Data5W {
+                _Data5W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&mut self) -> _Data4W {
+                _Data4W { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox identifier register" ]
+    pub struct Ti2r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox identifier register" ]
+    pub mod ti2r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ti2r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StidR {
+            bits: u16,
+        }
+        impl StidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExidR {
+            bits: u32,
+        }
+        impl ExidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdeR {
+            bits: u8,
+        }
+        impl IdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtrR {
+            bits: u8,
+        }
+        impl RtrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxrqR {
+            bits: u8,
+        }
+        impl TxrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ExidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ExidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 262143;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IdeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IdeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RtrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RtrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&self) -> StidR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                StidR { bits }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&self) -> ExidR {
+                let bits = {
+                    const MASK: u32 = 262143;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ExidR { bits }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&self) -> IdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdeR { bits }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&self) -> RtrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtrR { bits }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&self) -> TxrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxrqR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&mut self) -> _StidW {
+                _StidW { w: self }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&mut self) -> _ExidW {
+                _ExidW { w: self }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&mut self) -> _IdeW {
+                _IdeW { w: self }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&mut self) -> _RtrW {
+                _RtrW { w: self }
+            }
+            # [ doc = "Bit 0 - TXRQ" ]
+            # [ inline ( always ) ]
+            pub fn txrq(&mut self) -> _TxrqW {
+                _TxrqW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub struct Tdt2r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data length control and time stamp register" ]
+    pub mod tdt2r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdt2r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeR {
+            bits: u16,
+        }
+        impl TimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TgtR {
+            bits: u8,
+        }
+        impl TgtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DlcR {
+            bits: u8,
+        }
+        impl DlcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TimeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TimeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TgtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TgtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DlcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DlcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&self) -> TimeR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TimeR { bits }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&self) -> TgtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TgtR { bits }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&self) -> DlcR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DlcR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&mut self) -> _TimeW {
+                _TimeW { w: self }
+            }
+            # [ doc = "Bit 8 - TGT" ]
+            # [ inline ( always ) ]
+            pub fn tgt(&mut self) -> _TgtW {
+                _TgtW { w: self }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&mut self) -> _DlcW {
+                _DlcW { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data low register" ]
+    pub struct Tdl2r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data low register" ]
+    pub mod tdl2r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdl2r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data3R {
+            bits: u8,
+        }
+        impl Data3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u8,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u8,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data0R {
+            bits: u8,
+        }
+        impl Data0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&self) -> Data3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data3R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data1R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&self) -> Data0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data0R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&mut self) -> _Data3W {
+                _Data3W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&mut self) -> _Data2W {
+                _Data2W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&mut self) -> _Data1W {
+                _Data1W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&mut self) -> _Data0W {
+                _Data0W { w: self }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Tdh2r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod tdh2r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Tdh2r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data7R {
+            bits: u8,
+        }
+        impl Data7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data6R {
+            bits: u8,
+        }
+        impl Data6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data5R {
+            bits: u8,
+        }
+        impl Data5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data4R {
+            bits: u8,
+        }
+        impl Data4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Data4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Data4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&self) -> Data7R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data7R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&self) -> Data6R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data6R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&self) -> Data5R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data5R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&self) -> Data4R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data4R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&mut self) -> _Data7W {
+                _Data7W { w: self }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&mut self) -> _Data6W {
+                _Data6W { w: self }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&mut self) -> _Data5W {
+                _Data5W { w: self }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&mut self) -> _Data4W {
+                _Data4W { w: self }
+            }
+        }
+    }
+    # [ doc = "receive FIFO mailbox identifier register" ]
+    pub struct Ri0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "receive FIFO mailbox identifier register" ]
+    pub mod ri0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ri0r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StidR {
+            bits: u16,
+        }
+        impl StidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExidR {
+            bits: u32,
+        }
+        impl ExidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdeR {
+            bits: u8,
+        }
+        impl IdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtrR {
+            bits: u8,
+        }
+        impl RtrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&self) -> StidR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                StidR { bits }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&self) -> ExidR {
+                let bits = {
+                    const MASK: u32 = 262143;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ExidR { bits }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&self) -> IdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdeR { bits }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&self) -> RtrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtrR { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Rdt0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod rdt0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdt0r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeR {
+            bits: u16,
+        }
+        impl TimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FmiR {
+            bits: u8,
+        }
+        impl FmiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DlcR {
+            bits: u8,
+        }
+        impl DlcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&self) -> TimeR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TimeR { bits }
+            }
+            # [ doc = "Bits 8:15 - FMI" ]
+            # [ inline ( always ) ]
+            pub fn fmi(&self) -> FmiR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FmiR { bits }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&self) -> DlcR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DlcR { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Rdl0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod rdl0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdl0r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data3R {
+            bits: u8,
+        }
+        impl Data3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u8,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u8,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data0R {
+            bits: u8,
+        }
+        impl Data0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&self) -> Data3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data3R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data1R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&self) -> Data0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data0R { bits }
+            }
+        }
+    }
+    # [ doc = "receive FIFO mailbox data high register" ]
+    pub struct Rdh0r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "receive FIFO mailbox data high register" ]
+    pub mod rdh0r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdh0r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data7R {
+            bits: u8,
+        }
+        impl Data7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data6R {
+            bits: u8,
+        }
+        impl Data6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data5R {
+            bits: u8,
+        }
+        impl Data5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data4R {
+            bits: u8,
+        }
+        impl Data4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&self) -> Data7R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data7R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&self) -> Data6R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data6R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&self) -> Data5R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data5R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&self) -> Data4R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data4R { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Ri1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod ri1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Ri1r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StidR {
+            bits: u16,
+        }
+        impl StidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ExidR {
+            bits: u32,
+        }
+        impl ExidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IdeR {
+            bits: u8,
+        }
+        impl IdeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RtrR {
+            bits: u8,
+        }
+        impl RtrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 21:31 - STID" ]
+            # [ inline ( always ) ]
+            pub fn stid(&self) -> StidR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                StidR { bits }
+            }
+            # [ doc = "Bits 3:20 - EXID" ]
+            # [ inline ( always ) ]
+            pub fn exid(&self) -> ExidR {
+                let bits = {
+                    const MASK: u32 = 262143;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ExidR { bits }
+            }
+            # [ doc = "Bit 2 - IDE" ]
+            # [ inline ( always ) ]
+            pub fn ide(&self) -> IdeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IdeR { bits }
+            }
+            # [ doc = "Bit 1 - RTR" ]
+            # [ inline ( always ) ]
+            pub fn rtr(&self) -> RtrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RtrR { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Rdt1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod rdt1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdt1r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TimeR {
+            bits: u16,
+        }
+        impl TimeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FmiR {
+            bits: u8,
+        }
+        impl FmiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DlcR {
+            bits: u8,
+        }
+        impl DlcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 16:31 - TIME" ]
+            # [ inline ( always ) ]
+            pub fn time(&self) -> TimeR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TimeR { bits }
+            }
+            # [ doc = "Bits 8:15 - FMI" ]
+            # [ inline ( always ) ]
+            pub fn fmi(&self) -> FmiR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FmiR { bits }
+            }
+            # [ doc = "Bits 0:3 - DLC" ]
+            # [ inline ( always ) ]
+            pub fn dlc(&self) -> DlcR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DlcR { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Rdl1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod rdl1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdl1r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data3R {
+            bits: u8,
+        }
+        impl Data3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data2R {
+            bits: u8,
+        }
+        impl Data2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data1R {
+            bits: u8,
+        }
+        impl Data1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data0R {
+            bits: u8,
+        }
+        impl Data0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA3" ]
+            # [ inline ( always ) ]
+            pub fn data3(&self) -> Data3R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data3R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA2" ]
+            # [ inline ( always ) ]
+            pub fn data2(&self) -> Data2R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data2R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA1" ]
+            # [ inline ( always ) ]
+            pub fn data1(&self) -> Data1R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data1R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA0" ]
+            # [ inline ( always ) ]
+            pub fn data0(&self) -> Data0R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data0R { bits }
+            }
+        }
+    }
+    # [ doc = "mailbox data high register" ]
+    pub struct Rdh1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "mailbox data high register" ]
+    pub mod rdh1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::Rdh1r {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data7R {
+            bits: u8,
+        }
+        impl Data7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data6R {
+            bits: u8,
+        }
+        impl Data6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data5R {
+            bits: u8,
+        }
+        impl Data5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Data4R {
+            bits: u8,
+        }
+        impl Data4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 24:31 - DATA7" ]
+            # [ inline ( always ) ]
+            pub fn data7(&self) -> Data7R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data7R { bits }
+            }
+            # [ doc = "Bits 16:23 - DATA6" ]
+            # [ inline ( always ) ]
+            pub fn data6(&self) -> Data6R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data6R { bits }
+            }
+            # [ doc = "Bits 8:15 - DATA5" ]
+            # [ inline ( always ) ]
+            pub fn data5(&self) -> Data5R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data5R { bits }
+            }
+            # [ doc = "Bits 0:7 - DATA4" ]
+            # [ inline ( always ) ]
+            pub fn data4(&self) -> Data4R {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Data4R { bits }
+            }
+        }
+    }
+    # [ doc = "filter master register" ]
+    pub struct Fmr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "filter master register" ]
+    pub mod fmr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Fmr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Can2sbR {
+            bits: u8,
+        }
+        impl Can2sbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FinitR {
+            bits: u8,
+        }
+        impl FinitR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Can2sbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Can2sbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 63;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FinitW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FinitW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 8:13 - CAN2SB" ]
+            # [ inline ( always ) ]
+            pub fn can2sb(&self) -> Can2sbR {
+                let bits = {
+                    const MASK: u8 = 63;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Can2sbR { bits }
+            }
+            # [ doc = "Bit 0 - FINIT" ]
+            # [ inline ( always ) ]
+            pub fn finit(&self) -> FinitR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FinitR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 706481665 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 8:13 - CAN2SB" ]
+            # [ inline ( always ) ]
+            pub fn can2sb(&mut self) -> _Can2sbW {
+                _Can2sbW { w: self }
+            }
+            # [ doc = "Bit 0 - FINIT" ]
+            # [ inline ( always ) ]
+            pub fn finit(&mut self) -> _FinitW {
+                _FinitW { w: self }
+            }
+        }
+    }
+    # [ doc = "filter mode register" ]
+    pub struct Fm1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "filter mode register" ]
+    pub mod fm1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Fm1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm0R {
+            bits: u8,
+        }
+        impl Fbm0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm1R {
+            bits: u8,
+        }
+        impl Fbm1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm2R {
+            bits: u8,
+        }
+        impl Fbm2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm3R {
+            bits: u8,
+        }
+        impl Fbm3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm4R {
+            bits: u8,
+        }
+        impl Fbm4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm5R {
+            bits: u8,
+        }
+        impl Fbm5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm6R {
+            bits: u8,
+        }
+        impl Fbm6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm7R {
+            bits: u8,
+        }
+        impl Fbm7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm8R {
+            bits: u8,
+        }
+        impl Fbm8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm9R {
+            bits: u8,
+        }
+        impl Fbm9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm10R {
+            bits: u8,
+        }
+        impl Fbm10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm11R {
+            bits: u8,
+        }
+        impl Fbm11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm12R {
+            bits: u8,
+        }
+        impl Fbm12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm13R {
+            bits: u8,
+        }
+        impl Fbm13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm14R {
+            bits: u8,
+        }
+        impl Fbm14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm15R {
+            bits: u8,
+        }
+        impl Fbm15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm16R {
+            bits: u8,
+        }
+        impl Fbm16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm17R {
+            bits: u8,
+        }
+        impl Fbm17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm18R {
+            bits: u8,
+        }
+        impl Fbm18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm19R {
+            bits: u8,
+        }
+        impl Fbm19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm20R {
+            bits: u8,
+        }
+        impl Fbm20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm21R {
+            bits: u8,
+        }
+        impl Fbm21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm22R {
+            bits: u8,
+        }
+        impl Fbm22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm23R {
+            bits: u8,
+        }
+        impl Fbm23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm24R {
+            bits: u8,
+        }
+        impl Fbm24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm25R {
+            bits: u8,
+        }
+        impl Fbm25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm26R {
+            bits: u8,
+        }
+        impl Fbm26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fbm27R {
+            bits: u8,
+        }
+        impl Fbm27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fbm27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fbm27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm0(&self) -> Fbm0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm1(&self) -> Fbm1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm2(&self) -> Fbm2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm3(&self) -> Fbm3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm4(&self) -> Fbm4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm5(&self) -> Fbm5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm6(&self) -> Fbm6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm7(&self) -> Fbm7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm8(&self) -> Fbm8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm9(&self) -> Fbm9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm10(&self) -> Fbm10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm11(&self) -> Fbm11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm12(&self) -> Fbm12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm13(&self) -> Fbm13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm14(&self) -> Fbm14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm15(&self) -> Fbm15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm16(&self) -> Fbm16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm17(&self) -> Fbm17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm18(&self) -> Fbm18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm19(&self) -> Fbm19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm20(&self) -> Fbm20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm21(&self) -> Fbm21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm22(&self) -> Fbm22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm23(&self) -> Fbm23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm24(&self) -> Fbm24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm25(&self) -> Fbm25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm26(&self) -> Fbm26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm27(&self) -> Fbm27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fbm27R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm0(&mut self) -> _Fbm0W {
+                _Fbm0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm1(&mut self) -> _Fbm1W {
+                _Fbm1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm2(&mut self) -> _Fbm2W {
+                _Fbm2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm3(&mut self) -> _Fbm3W {
+                _Fbm3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm4(&mut self) -> _Fbm4W {
+                _Fbm4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm5(&mut self) -> _Fbm5W {
+                _Fbm5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm6(&mut self) -> _Fbm6W {
+                _Fbm6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm7(&mut self) -> _Fbm7W {
+                _Fbm7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm8(&mut self) -> _Fbm8W {
+                _Fbm8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm9(&mut self) -> _Fbm9W {
+                _Fbm9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm10(&mut self) -> _Fbm10W {
+                _Fbm10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm11(&mut self) -> _Fbm11W {
+                _Fbm11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm12(&mut self) -> _Fbm12W {
+                _Fbm12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm13(&mut self) -> _Fbm13W {
+                _Fbm13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm14(&mut self) -> _Fbm14W {
+                _Fbm14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm15(&mut self) -> _Fbm15W {
+                _Fbm15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm16(&mut self) -> _Fbm16W {
+                _Fbm16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm17(&mut self) -> _Fbm17W {
+                _Fbm17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm18(&mut self) -> _Fbm18W {
+                _Fbm18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm19(&mut self) -> _Fbm19W {
+                _Fbm19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm20(&mut self) -> _Fbm20W {
+                _Fbm20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm21(&mut self) -> _Fbm21W {
+                _Fbm21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm22(&mut self) -> _Fbm22W {
+                _Fbm22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm23(&mut self) -> _Fbm23W {
+                _Fbm23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm24(&mut self) -> _Fbm24W {
+                _Fbm24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm25(&mut self) -> _Fbm25W {
+                _Fbm25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm26(&mut self) -> _Fbm26W {
+                _Fbm26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter mode" ]
+            # [ inline ( always ) ]
+            pub fn fbm27(&mut self) -> _Fbm27W {
+                _Fbm27W { w: self }
+            }
+        }
+    }
+    # [ doc = "filter scale register" ]
+    pub struct Fs1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "filter scale register" ]
+    pub mod fs1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Fs1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc0R {
+            bits: u8,
+        }
+        impl Fsc0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc1R {
+            bits: u8,
+        }
+        impl Fsc1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc2R {
+            bits: u8,
+        }
+        impl Fsc2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc3R {
+            bits: u8,
+        }
+        impl Fsc3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc4R {
+            bits: u8,
+        }
+        impl Fsc4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc5R {
+            bits: u8,
+        }
+        impl Fsc5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc6R {
+            bits: u8,
+        }
+        impl Fsc6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc7R {
+            bits: u8,
+        }
+        impl Fsc7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc8R {
+            bits: u8,
+        }
+        impl Fsc8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc9R {
+            bits: u8,
+        }
+        impl Fsc9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc10R {
+            bits: u8,
+        }
+        impl Fsc10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc11R {
+            bits: u8,
+        }
+        impl Fsc11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc12R {
+            bits: u8,
+        }
+        impl Fsc12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc13R {
+            bits: u8,
+        }
+        impl Fsc13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc14R {
+            bits: u8,
+        }
+        impl Fsc14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc15R {
+            bits: u8,
+        }
+        impl Fsc15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc16R {
+            bits: u8,
+        }
+        impl Fsc16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc17R {
+            bits: u8,
+        }
+        impl Fsc17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc18R {
+            bits: u8,
+        }
+        impl Fsc18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc19R {
+            bits: u8,
+        }
+        impl Fsc19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc20R {
+            bits: u8,
+        }
+        impl Fsc20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc21R {
+            bits: u8,
+        }
+        impl Fsc21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc22R {
+            bits: u8,
+        }
+        impl Fsc22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc23R {
+            bits: u8,
+        }
+        impl Fsc23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc24R {
+            bits: u8,
+        }
+        impl Fsc24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc25R {
+            bits: u8,
+        }
+        impl Fsc25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc26R {
+            bits: u8,
+        }
+        impl Fsc26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fsc27R {
+            bits: u8,
+        }
+        impl Fsc27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fsc27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fsc27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc0(&self) -> Fsc0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc1(&self) -> Fsc1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc2(&self) -> Fsc2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc3(&self) -> Fsc3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc4(&self) -> Fsc4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc5(&self) -> Fsc5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc6(&self) -> Fsc6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc7(&self) -> Fsc7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc8(&self) -> Fsc8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc9(&self) -> Fsc9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc10(&self) -> Fsc10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc11(&self) -> Fsc11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc12(&self) -> Fsc12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc13(&self) -> Fsc13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc14(&self) -> Fsc14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc15(&self) -> Fsc15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc16(&self) -> Fsc16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc17(&self) -> Fsc17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc18(&self) -> Fsc18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc19(&self) -> Fsc19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc20(&self) -> Fsc20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc21(&self) -> Fsc21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc22(&self) -> Fsc22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc23(&self) -> Fsc23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc24(&self) -> Fsc24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc25(&self) -> Fsc25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc26(&self) -> Fsc26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc27(&self) -> Fsc27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fsc27R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc0(&mut self) -> _Fsc0W {
+                _Fsc0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc1(&mut self) -> _Fsc1W {
+                _Fsc1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc2(&mut self) -> _Fsc2W {
+                _Fsc2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc3(&mut self) -> _Fsc3W {
+                _Fsc3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc4(&mut self) -> _Fsc4W {
+                _Fsc4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc5(&mut self) -> _Fsc5W {
+                _Fsc5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc6(&mut self) -> _Fsc6W {
+                _Fsc6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc7(&mut self) -> _Fsc7W {
+                _Fsc7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc8(&mut self) -> _Fsc8W {
+                _Fsc8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc9(&mut self) -> _Fsc9W {
+                _Fsc9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc10(&mut self) -> _Fsc10W {
+                _Fsc10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc11(&mut self) -> _Fsc11W {
+                _Fsc11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc12(&mut self) -> _Fsc12W {
+                _Fsc12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc13(&mut self) -> _Fsc13W {
+                _Fsc13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc14(&mut self) -> _Fsc14W {
+                _Fsc14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc15(&mut self) -> _Fsc15W {
+                _Fsc15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc16(&mut self) -> _Fsc16W {
+                _Fsc16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc17(&mut self) -> _Fsc17W {
+                _Fsc17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc18(&mut self) -> _Fsc18W {
+                _Fsc18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc19(&mut self) -> _Fsc19W {
+                _Fsc19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc20(&mut self) -> _Fsc20W {
+                _Fsc20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc21(&mut self) -> _Fsc21W {
+                _Fsc21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc22(&mut self) -> _Fsc22W {
+                _Fsc22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc23(&mut self) -> _Fsc23W {
+                _Fsc23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc24(&mut self) -> _Fsc24W {
+                _Fsc24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc25(&mut self) -> _Fsc25W {
+                _Fsc25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc26(&mut self) -> _Fsc26W {
+                _Fsc26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter scale configuration" ]
+            # [ inline ( always ) ]
+            pub fn fsc27(&mut self) -> _Fsc27W {
+                _Fsc27W { w: self }
+            }
+        }
+    }
+    # [ doc = "filter FIFO assignment register" ]
+    pub struct Ffa1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "filter FIFO assignment register" ]
+    pub mod ffa1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ffa1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa0R {
+            bits: u8,
+        }
+        impl Ffa0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa1R {
+            bits: u8,
+        }
+        impl Ffa1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa2R {
+            bits: u8,
+        }
+        impl Ffa2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa3R {
+            bits: u8,
+        }
+        impl Ffa3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa4R {
+            bits: u8,
+        }
+        impl Ffa4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa5R {
+            bits: u8,
+        }
+        impl Ffa5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa6R {
+            bits: u8,
+        }
+        impl Ffa6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa7R {
+            bits: u8,
+        }
+        impl Ffa7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa8R {
+            bits: u8,
+        }
+        impl Ffa8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa9R {
+            bits: u8,
+        }
+        impl Ffa9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa10R {
+            bits: u8,
+        }
+        impl Ffa10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa11R {
+            bits: u8,
+        }
+        impl Ffa11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa12R {
+            bits: u8,
+        }
+        impl Ffa12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa13R {
+            bits: u8,
+        }
+        impl Ffa13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa14R {
+            bits: u8,
+        }
+        impl Ffa14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa15R {
+            bits: u8,
+        }
+        impl Ffa15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa16R {
+            bits: u8,
+        }
+        impl Ffa16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa17R {
+            bits: u8,
+        }
+        impl Ffa17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa18R {
+            bits: u8,
+        }
+        impl Ffa18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa19R {
+            bits: u8,
+        }
+        impl Ffa19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa20R {
+            bits: u8,
+        }
+        impl Ffa20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa21R {
+            bits: u8,
+        }
+        impl Ffa21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa22R {
+            bits: u8,
+        }
+        impl Ffa22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa23R {
+            bits: u8,
+        }
+        impl Ffa23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa24R {
+            bits: u8,
+        }
+        impl Ffa24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa25R {
+            bits: u8,
+        }
+        impl Ffa25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa26R {
+            bits: u8,
+        }
+        impl Ffa26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Ffa27R {
+            bits: u8,
+        }
+        impl Ffa27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Ffa27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Ffa27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter FIFO assignment for filter 0" ]
+            # [ inline ( always ) ]
+            pub fn ffa0(&self) -> Ffa0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter FIFO assignment for filter 1" ]
+            # [ inline ( always ) ]
+            pub fn ffa1(&self) -> Ffa1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter FIFO assignment for filter 2" ]
+            # [ inline ( always ) ]
+            pub fn ffa2(&self) -> Ffa2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter FIFO assignment for filter 3" ]
+            # [ inline ( always ) ]
+            pub fn ffa3(&self) -> Ffa3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter FIFO assignment for filter 4" ]
+            # [ inline ( always ) ]
+            pub fn ffa4(&self) -> Ffa4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter FIFO assignment for filter 5" ]
+            # [ inline ( always ) ]
+            pub fn ffa5(&self) -> Ffa5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter FIFO assignment for filter 6" ]
+            # [ inline ( always ) ]
+            pub fn ffa6(&self) -> Ffa6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter FIFO assignment for filter 7" ]
+            # [ inline ( always ) ]
+            pub fn ffa7(&self) -> Ffa7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter FIFO assignment for filter 8" ]
+            # [ inline ( always ) ]
+            pub fn ffa8(&self) -> Ffa8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter FIFO assignment for filter 9" ]
+            # [ inline ( always ) ]
+            pub fn ffa9(&self) -> Ffa9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter FIFO assignment for filter 10" ]
+            # [ inline ( always ) ]
+            pub fn ffa10(&self) -> Ffa10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter FIFO assignment for filter 11" ]
+            # [ inline ( always ) ]
+            pub fn ffa11(&self) -> Ffa11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter FIFO assignment for filter 12" ]
+            # [ inline ( always ) ]
+            pub fn ffa12(&self) -> Ffa12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter FIFO assignment for filter 13" ]
+            # [ inline ( always ) ]
+            pub fn ffa13(&self) -> Ffa13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter FIFO assignment for filter 14" ]
+            # [ inline ( always ) ]
+            pub fn ffa14(&self) -> Ffa14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter FIFO assignment for filter 15" ]
+            # [ inline ( always ) ]
+            pub fn ffa15(&self) -> Ffa15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter FIFO assignment for filter 16" ]
+            # [ inline ( always ) ]
+            pub fn ffa16(&self) -> Ffa16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter FIFO assignment for filter 17" ]
+            # [ inline ( always ) ]
+            pub fn ffa17(&self) -> Ffa17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter FIFO assignment for filter 18" ]
+            # [ inline ( always ) ]
+            pub fn ffa18(&self) -> Ffa18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter FIFO assignment for filter 19" ]
+            # [ inline ( always ) ]
+            pub fn ffa19(&self) -> Ffa19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter FIFO assignment for filter 20" ]
+            # [ inline ( always ) ]
+            pub fn ffa20(&self) -> Ffa20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter FIFO assignment for filter 21" ]
+            # [ inline ( always ) ]
+            pub fn ffa21(&self) -> Ffa21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter FIFO assignment for filter 22" ]
+            # [ inline ( always ) ]
+            pub fn ffa22(&self) -> Ffa22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter FIFO assignment for filter 23" ]
+            # [ inline ( always ) ]
+            pub fn ffa23(&self) -> Ffa23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter FIFO assignment for filter 24" ]
+            # [ inline ( always ) ]
+            pub fn ffa24(&self) -> Ffa24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter FIFO assignment for filter 25" ]
+            # [ inline ( always ) ]
+            pub fn ffa25(&self) -> Ffa25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter FIFO assignment for filter 26" ]
+            # [ inline ( always ) ]
+            pub fn ffa26(&self) -> Ffa26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter FIFO assignment for filter 27" ]
+            # [ inline ( always ) ]
+            pub fn ffa27(&self) -> Ffa27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Ffa27R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter FIFO assignment for filter 0" ]
+            # [ inline ( always ) ]
+            pub fn ffa0(&mut self) -> _Ffa0W {
+                _Ffa0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter FIFO assignment for filter 1" ]
+            # [ inline ( always ) ]
+            pub fn ffa1(&mut self) -> _Ffa1W {
+                _Ffa1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter FIFO assignment for filter 2" ]
+            # [ inline ( always ) ]
+            pub fn ffa2(&mut self) -> _Ffa2W {
+                _Ffa2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter FIFO assignment for filter 3" ]
+            # [ inline ( always ) ]
+            pub fn ffa3(&mut self) -> _Ffa3W {
+                _Ffa3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter FIFO assignment for filter 4" ]
+            # [ inline ( always ) ]
+            pub fn ffa4(&mut self) -> _Ffa4W {
+                _Ffa4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter FIFO assignment for filter 5" ]
+            # [ inline ( always ) ]
+            pub fn ffa5(&mut self) -> _Ffa5W {
+                _Ffa5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter FIFO assignment for filter 6" ]
+            # [ inline ( always ) ]
+            pub fn ffa6(&mut self) -> _Ffa6W {
+                _Ffa6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter FIFO assignment for filter 7" ]
+            # [ inline ( always ) ]
+            pub fn ffa7(&mut self) -> _Ffa7W {
+                _Ffa7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter FIFO assignment for filter 8" ]
+            # [ inline ( always ) ]
+            pub fn ffa8(&mut self) -> _Ffa8W {
+                _Ffa8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter FIFO assignment for filter 9" ]
+            # [ inline ( always ) ]
+            pub fn ffa9(&mut self) -> _Ffa9W {
+                _Ffa9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter FIFO assignment for filter 10" ]
+            # [ inline ( always ) ]
+            pub fn ffa10(&mut self) -> _Ffa10W {
+                _Ffa10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter FIFO assignment for filter 11" ]
+            # [ inline ( always ) ]
+            pub fn ffa11(&mut self) -> _Ffa11W {
+                _Ffa11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter FIFO assignment for filter 12" ]
+            # [ inline ( always ) ]
+            pub fn ffa12(&mut self) -> _Ffa12W {
+                _Ffa12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter FIFO assignment for filter 13" ]
+            # [ inline ( always ) ]
+            pub fn ffa13(&mut self) -> _Ffa13W {
+                _Ffa13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter FIFO assignment for filter 14" ]
+            # [ inline ( always ) ]
+            pub fn ffa14(&mut self) -> _Ffa14W {
+                _Ffa14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter FIFO assignment for filter 15" ]
+            # [ inline ( always ) ]
+            pub fn ffa15(&mut self) -> _Ffa15W {
+                _Ffa15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter FIFO assignment for filter 16" ]
+            # [ inline ( always ) ]
+            pub fn ffa16(&mut self) -> _Ffa16W {
+                _Ffa16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter FIFO assignment for filter 17" ]
+            # [ inline ( always ) ]
+            pub fn ffa17(&mut self) -> _Ffa17W {
+                _Ffa17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter FIFO assignment for filter 18" ]
+            # [ inline ( always ) ]
+            pub fn ffa18(&mut self) -> _Ffa18W {
+                _Ffa18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter FIFO assignment for filter 19" ]
+            # [ inline ( always ) ]
+            pub fn ffa19(&mut self) -> _Ffa19W {
+                _Ffa19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter FIFO assignment for filter 20" ]
+            # [ inline ( always ) ]
+            pub fn ffa20(&mut self) -> _Ffa20W {
+                _Ffa20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter FIFO assignment for filter 21" ]
+            # [ inline ( always ) ]
+            pub fn ffa21(&mut self) -> _Ffa21W {
+                _Ffa21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter FIFO assignment for filter 22" ]
+            # [ inline ( always ) ]
+            pub fn ffa22(&mut self) -> _Ffa22W {
+                _Ffa22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter FIFO assignment for filter 23" ]
+            # [ inline ( always ) ]
+            pub fn ffa23(&mut self) -> _Ffa23W {
+                _Ffa23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter FIFO assignment for filter 24" ]
+            # [ inline ( always ) ]
+            pub fn ffa24(&mut self) -> _Ffa24W {
+                _Ffa24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter FIFO assignment for filter 25" ]
+            # [ inline ( always ) ]
+            pub fn ffa25(&mut self) -> _Ffa25W {
+                _Ffa25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter FIFO assignment for filter 26" ]
+            # [ inline ( always ) ]
+            pub fn ffa26(&mut self) -> _Ffa26W {
+                _Ffa26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter FIFO assignment for filter 27" ]
+            # [ inline ( always ) ]
+            pub fn ffa27(&mut self) -> _Ffa27W {
+                _Ffa27W { w: self }
+            }
+        }
+    }
+    # [ doc = "filter activation register" ]
+    pub struct Fa1r {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "filter activation register" ]
+    pub mod fa1r {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Fa1r {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact0R {
+            bits: u8,
+        }
+        impl Fact0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact1R {
+            bits: u8,
+        }
+        impl Fact1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact2R {
+            bits: u8,
+        }
+        impl Fact2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact3R {
+            bits: u8,
+        }
+        impl Fact3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact4R {
+            bits: u8,
+        }
+        impl Fact4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact5R {
+            bits: u8,
+        }
+        impl Fact5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact6R {
+            bits: u8,
+        }
+        impl Fact6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact7R {
+            bits: u8,
+        }
+        impl Fact7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact8R {
+            bits: u8,
+        }
+        impl Fact8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact9R {
+            bits: u8,
+        }
+        impl Fact9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact10R {
+            bits: u8,
+        }
+        impl Fact10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact11R {
+            bits: u8,
+        }
+        impl Fact11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact12R {
+            bits: u8,
+        }
+        impl Fact12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact13R {
+            bits: u8,
+        }
+        impl Fact13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact14R {
+            bits: u8,
+        }
+        impl Fact14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact15R {
+            bits: u8,
+        }
+        impl Fact15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact16R {
+            bits: u8,
+        }
+        impl Fact16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact17R {
+            bits: u8,
+        }
+        impl Fact17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact18R {
+            bits: u8,
+        }
+        impl Fact18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact19R {
+            bits: u8,
+        }
+        impl Fact19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact20R {
+            bits: u8,
+        }
+        impl Fact20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact21R {
+            bits: u8,
+        }
+        impl Fact21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact22R {
+            bits: u8,
+        }
+        impl Fact22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact23R {
+            bits: u8,
+        }
+        impl Fact23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact24R {
+            bits: u8,
+        }
+        impl Fact24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact25R {
+            bits: u8,
+        }
+        impl Fact25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact26R {
+            bits: u8,
+        }
+        impl Fact26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fact27R {
+            bits: u8,
+        }
+        impl Fact27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fact27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fact27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact0(&self) -> Fact0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact1(&self) -> Fact1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact2(&self) -> Fact2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact3(&self) -> Fact3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact4(&self) -> Fact4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact5(&self) -> Fact5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact6(&self) -> Fact6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact7(&self) -> Fact7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact8(&self) -> Fact8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact9(&self) -> Fact9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact10(&self) -> Fact10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact11(&self) -> Fact11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact12(&self) -> Fact12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact13(&self) -> Fact13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact14(&self) -> Fact14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact15(&self) -> Fact15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact16(&self) -> Fact16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact17(&self) -> Fact17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact18(&self) -> Fact18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact19(&self) -> Fact19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact20(&self) -> Fact20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact21(&self) -> Fact21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact22(&self) -> Fact22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact23(&self) -> Fact23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact24(&self) -> Fact24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact25(&self) -> Fact25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact26(&self) -> Fact26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact27(&self) -> Fact27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fact27R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact0(&mut self) -> _Fact0W {
+                _Fact0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact1(&mut self) -> _Fact1W {
+                _Fact1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact2(&mut self) -> _Fact2W {
+                _Fact2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact3(&mut self) -> _Fact3W {
+                _Fact3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact4(&mut self) -> _Fact4W {
+                _Fact4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact5(&mut self) -> _Fact5W {
+                _Fact5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact6(&mut self) -> _Fact6W {
+                _Fact6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact7(&mut self) -> _Fact7W {
+                _Fact7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact8(&mut self) -> _Fact8W {
+                _Fact8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact9(&mut self) -> _Fact9W {
+                _Fact9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact10(&mut self) -> _Fact10W {
+                _Fact10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact11(&mut self) -> _Fact11W {
+                _Fact11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact12(&mut self) -> _Fact12W {
+                _Fact12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact13(&mut self) -> _Fact13W {
+                _Fact13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact14(&mut self) -> _Fact14W {
+                _Fact14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact15(&mut self) -> _Fact15W {
+                _Fact15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact16(&mut self) -> _Fact16W {
+                _Fact16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact17(&mut self) -> _Fact17W {
+                _Fact17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact18(&mut self) -> _Fact18W {
+                _Fact18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact19(&mut self) -> _Fact19W {
+                _Fact19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact20(&mut self) -> _Fact20W {
+                _Fact20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact21(&mut self) -> _Fact21W {
+                _Fact21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact22(&mut self) -> _Fact22W {
+                _Fact22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact23(&mut self) -> _Fact23W {
+                _Fact23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact24(&mut self) -> _Fact24W {
+                _Fact24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact25(&mut self) -> _Fact25W {
+                _Fact25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact26(&mut self) -> _Fact26W {
+                _Fact26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter active" ]
+            # [ inline ( always ) ]
+            pub fn fact27(&mut self) -> _Fact27W {
+                _Fact27W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 0 register 1" ]
+    pub struct F0r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 0 register 1" ]
+    pub mod f0r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F0r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 0 register 2" ]
+    pub struct F0r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 0 register 2" ]
+    pub mod f0r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F0r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 1 register 1" ]
+    pub struct F1r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 1 register 1" ]
+    pub mod f1r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F1r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 1 register 2" ]
+    pub struct F1r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 1 register 2" ]
+    pub mod f1r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F1r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 2 register 1" ]
+    pub struct F2r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 2 register 1" ]
+    pub mod f2r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F2r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 2 register 2" ]
+    pub struct F2r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 2 register 2" ]
+    pub mod f2r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F2r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 3 register 1" ]
+    pub struct F3r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 3 register 1" ]
+    pub mod f3r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F3r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 3 register 2" ]
+    pub struct F3r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 3 register 2" ]
+    pub mod f3r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F3r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 4 register 1" ]
+    pub struct F4r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 4 register 1" ]
+    pub mod f4r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F4r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 4 register 2" ]
+    pub struct F4r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 4 register 2" ]
+    pub mod f4r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F4r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 5 register 1" ]
+    pub struct F5r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 5 register 1" ]
+    pub mod f5r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F5r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 5 register 2" ]
+    pub struct F5r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 5 register 2" ]
+    pub mod f5r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F5r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 6 register 1" ]
+    pub struct F6r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 6 register 1" ]
+    pub mod f6r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F6r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 6 register 2" ]
+    pub struct F6r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 6 register 2" ]
+    pub mod f6r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F6r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 7 register 1" ]
+    pub struct F7r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 7 register 1" ]
+    pub mod f7r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F7r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 7 register 2" ]
+    pub struct F7r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 7 register 2" ]
+    pub mod f7r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F7r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 8 register 1" ]
+    pub struct F8r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 8 register 1" ]
+    pub mod f8r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F8r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 8 register 2" ]
+    pub struct F8r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 8 register 2" ]
+    pub mod f8r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F8r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 9 register 1" ]
+    pub struct F9r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 9 register 1" ]
+    pub mod f9r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F9r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 9 register 2" ]
+    pub struct F9r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 9 register 2" ]
+    pub mod f9r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F9r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 10 register 1" ]
+    pub struct F10r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 10 register 1" ]
+    pub mod f10r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F10r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 10 register 2" ]
+    pub struct F10r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 10 register 2" ]
+    pub mod f10r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F10r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 11 register 1" ]
+    pub struct F11r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 11 register 1" ]
+    pub mod f11r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F11r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 11 register 2" ]
+    pub struct F11r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 11 register 2" ]
+    pub mod f11r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F11r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 4 register 1" ]
+    pub struct F12r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 4 register 1" ]
+    pub mod f12r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F12r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 12 register 2" ]
+    pub struct F12r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 12 register 2" ]
+    pub mod f12r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F12r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 13 register 1" ]
+    pub struct F13r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 13 register 1" ]
+    pub mod f13r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F13r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 13 register 2" ]
+    pub struct F13r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 13 register 2" ]
+    pub mod f13r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F13r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 14 register 1" ]
+    pub struct F14r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 14 register 1" ]
+    pub mod f14r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F14r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 14 register 2" ]
+    pub struct F14r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 14 register 2" ]
+    pub mod f14r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F14r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 15 register 1" ]
+    pub struct F15r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 15 register 1" ]
+    pub mod f15r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F15r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 15 register 2" ]
+    pub struct F15r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 15 register 2" ]
+    pub mod f15r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F15r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 16 register 1" ]
+    pub struct F16r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 16 register 1" ]
+    pub mod f16r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F16r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 16 register 2" ]
+    pub struct F16r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 16 register 2" ]
+    pub mod f16r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F16r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 17 register 1" ]
+    pub struct F17r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 17 register 1" ]
+    pub mod f17r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F17r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 17 register 2" ]
+    pub struct F17r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 17 register 2" ]
+    pub mod f17r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F17r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 18 register 1" ]
+    pub struct F18r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 18 register 1" ]
+    pub mod f18r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F18r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 18 register 2" ]
+    pub struct F18r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 18 register 2" ]
+    pub mod f18r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F18r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 19 register 1" ]
+    pub struct F19r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 19 register 1" ]
+    pub mod f19r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F19r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 19 register 2" ]
+    pub struct F19r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 19 register 2" ]
+    pub mod f19r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F19r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 20 register 1" ]
+    pub struct F20r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 20 register 1" ]
+    pub mod f20r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F20r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 20 register 2" ]
+    pub struct F20r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 20 register 2" ]
+    pub mod f20r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F20r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 21 register 1" ]
+    pub struct F21r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 21 register 1" ]
+    pub mod f21r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F21r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 21 register 2" ]
+    pub struct F21r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 21 register 2" ]
+    pub mod f21r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F21r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 22 register 1" ]
+    pub struct F22r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 22 register 1" ]
+    pub mod f22r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F22r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 22 register 2" ]
+    pub struct F22r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 22 register 2" ]
+    pub mod f22r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F22r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 23 register 1" ]
+    pub struct F23r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 23 register 1" ]
+    pub mod f23r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F23r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 23 register 2" ]
+    pub struct F23r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 23 register 2" ]
+    pub mod f23r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F23r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 24 register 1" ]
+    pub struct F24r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 24 register 1" ]
+    pub mod f24r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F24r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 24 register 2" ]
+    pub struct F24r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 24 register 2" ]
+    pub mod f24r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F24r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 25 register 1" ]
+    pub struct F25r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 25 register 1" ]
+    pub mod f25r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F25r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 25 register 2" ]
+    pub struct F25r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 25 register 2" ]
+    pub mod f25r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F25r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 26 register 1" ]
+    pub struct F26r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 26 register 1" ]
+    pub mod f26r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F26r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 26 register 2" ]
+    pub struct F26r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 26 register 2" ]
+    pub mod f26r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F26r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 27 register 1" ]
+    pub struct F27r1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 27 register 1" ]
+    pub mod f27r1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F27r1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+    # [ doc = "Filter bank 27 register 2" ]
+    pub struct F27r2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Filter bank 27 register 2" ]
+    pub mod f27r2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::F27r2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb0R {
+            bits: u8,
+        }
+        impl Fb0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb1R {
+            bits: u8,
+        }
+        impl Fb1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb2R {
+            bits: u8,
+        }
+        impl Fb2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb3R {
+            bits: u8,
+        }
+        impl Fb3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb4R {
+            bits: u8,
+        }
+        impl Fb4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb5R {
+            bits: u8,
+        }
+        impl Fb5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb6R {
+            bits: u8,
+        }
+        impl Fb6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb7R {
+            bits: u8,
+        }
+        impl Fb7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb8R {
+            bits: u8,
+        }
+        impl Fb8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb9R {
+            bits: u8,
+        }
+        impl Fb9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb10R {
+            bits: u8,
+        }
+        impl Fb10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb11R {
+            bits: u8,
+        }
+        impl Fb11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb12R {
+            bits: u8,
+        }
+        impl Fb12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb13R {
+            bits: u8,
+        }
+        impl Fb13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb14R {
+            bits: u8,
+        }
+        impl Fb14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb15R {
+            bits: u8,
+        }
+        impl Fb15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb16R {
+            bits: u8,
+        }
+        impl Fb16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb17R {
+            bits: u8,
+        }
+        impl Fb17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb18R {
+            bits: u8,
+        }
+        impl Fb18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb19R {
+            bits: u8,
+        }
+        impl Fb19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb20R {
+            bits: u8,
+        }
+        impl Fb20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb21R {
+            bits: u8,
+        }
+        impl Fb21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb22R {
+            bits: u8,
+        }
+        impl Fb22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb23R {
+            bits: u8,
+        }
+        impl Fb23R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb24R {
+            bits: u8,
+        }
+        impl Fb24R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb25R {
+            bits: u8,
+        }
+        impl Fb25R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb26R {
+            bits: u8,
+        }
+        impl Fb26R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb27R {
+            bits: u8,
+        }
+        impl Fb27R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb28R {
+            bits: u8,
+        }
+        impl Fb28R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb29R {
+            bits: u8,
+        }
+        impl Fb29R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb30R {
+            bits: u8,
+        }
+        impl Fb30R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Fb31R {
+            bits: u8,
+        }
+        impl Fb31R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb23W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb23W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb24W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb24W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb25W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb25W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb26W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb26W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb27W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb27W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb28W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb28W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb29W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb29W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb30W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb30W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Fb31W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Fb31W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&self) -> Fb0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb0R { bits }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&self) -> Fb1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb1R { bits }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&self) -> Fb2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb2R { bits }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&self) -> Fb3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb3R { bits }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&self) -> Fb4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb4R { bits }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&self) -> Fb5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb5R { bits }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&self) -> Fb6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb6R { bits }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&self) -> Fb7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb7R { bits }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&self) -> Fb8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb8R { bits }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&self) -> Fb9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb9R { bits }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&self) -> Fb10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb10R { bits }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&self) -> Fb11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb11R { bits }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&self) -> Fb12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb12R { bits }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&self) -> Fb13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb13R { bits }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&self) -> Fb14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb14R { bits }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&self) -> Fb15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb15R { bits }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&self) -> Fb16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb16R { bits }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&self) -> Fb17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb17R { bits }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&self) -> Fb18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb18R { bits }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&self) -> Fb19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb19R { bits }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&self) -> Fb20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb20R { bits }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&self) -> Fb21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb21R { bits }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&self) -> Fb22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb22R { bits }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&self) -> Fb23R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb23R { bits }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&self) -> Fb24R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb24R { bits }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&self) -> Fb25R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb25R { bits }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&self) -> Fb26R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb26R { bits }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&self) -> Fb27R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb27R { bits }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&self) -> Fb28R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb28R { bits }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&self) -> Fb29R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb29R { bits }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&self) -> Fb30R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb30R { bits }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&self) -> Fb31R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Fb31R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb0(&mut self) -> _Fb0W {
+                _Fb0W { w: self }
+            }
+            # [ doc = "Bit 1 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb1(&mut self) -> _Fb1W {
+                _Fb1W { w: self }
+            }
+            # [ doc = "Bit 2 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb2(&mut self) -> _Fb2W {
+                _Fb2W { w: self }
+            }
+            # [ doc = "Bit 3 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb3(&mut self) -> _Fb3W {
+                _Fb3W { w: self }
+            }
+            # [ doc = "Bit 4 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb4(&mut self) -> _Fb4W {
+                _Fb4W { w: self }
+            }
+            # [ doc = "Bit 5 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb5(&mut self) -> _Fb5W {
+                _Fb5W { w: self }
+            }
+            # [ doc = "Bit 6 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb6(&mut self) -> _Fb6W {
+                _Fb6W { w: self }
+            }
+            # [ doc = "Bit 7 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb7(&mut self) -> _Fb7W {
+                _Fb7W { w: self }
+            }
+            # [ doc = "Bit 8 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb8(&mut self) -> _Fb8W {
+                _Fb8W { w: self }
+            }
+            # [ doc = "Bit 9 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb9(&mut self) -> _Fb9W {
+                _Fb9W { w: self }
+            }
+            # [ doc = "Bit 10 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb10(&mut self) -> _Fb10W {
+                _Fb10W { w: self }
+            }
+            # [ doc = "Bit 11 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb11(&mut self) -> _Fb11W {
+                _Fb11W { w: self }
+            }
+            # [ doc = "Bit 12 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb12(&mut self) -> _Fb12W {
+                _Fb12W { w: self }
+            }
+            # [ doc = "Bit 13 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb13(&mut self) -> _Fb13W {
+                _Fb13W { w: self }
+            }
+            # [ doc = "Bit 14 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb14(&mut self) -> _Fb14W {
+                _Fb14W { w: self }
+            }
+            # [ doc = "Bit 15 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb15(&mut self) -> _Fb15W {
+                _Fb15W { w: self }
+            }
+            # [ doc = "Bit 16 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb16(&mut self) -> _Fb16W {
+                _Fb16W { w: self }
+            }
+            # [ doc = "Bit 17 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb17(&mut self) -> _Fb17W {
+                _Fb17W { w: self }
+            }
+            # [ doc = "Bit 18 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb18(&mut self) -> _Fb18W {
+                _Fb18W { w: self }
+            }
+            # [ doc = "Bit 19 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb19(&mut self) -> _Fb19W {
+                _Fb19W { w: self }
+            }
+            # [ doc = "Bit 20 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb20(&mut self) -> _Fb20W {
+                _Fb20W { w: self }
+            }
+            # [ doc = "Bit 21 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb21(&mut self) -> _Fb21W {
+                _Fb21W { w: self }
+            }
+            # [ doc = "Bit 22 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb22(&mut self) -> _Fb22W {
+                _Fb22W { w: self }
+            }
+            # [ doc = "Bit 23 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb23(&mut self) -> _Fb23W {
+                _Fb23W { w: self }
+            }
+            # [ doc = "Bit 24 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb24(&mut self) -> _Fb24W {
+                _Fb24W { w: self }
+            }
+            # [ doc = "Bit 25 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb25(&mut self) -> _Fb25W {
+                _Fb25W { w: self }
+            }
+            # [ doc = "Bit 26 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb26(&mut self) -> _Fb26W {
+                _Fb26W { w: self }
+            }
+            # [ doc = "Bit 27 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb27(&mut self) -> _Fb27W {
+                _Fb27W { w: self }
+            }
+            # [ doc = "Bit 28 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb28(&mut self) -> _Fb28W {
+                _Fb28W { w: self }
+            }
+            # [ doc = "Bit 29 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb29(&mut self) -> _Fb29W {
+                _Fb29W { w: self }
+            }
+            # [ doc = "Bit 30 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb30(&mut self) -> _Fb30W {
+                _Fb30W { w: self }
+            }
+            # [ doc = "Bit 31 - Filter bits" ]
+            # [ inline ( always ) ]
+            pub fn fb31(&mut self) -> _Fb31W {
+                _Fb31W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "Controller area network" ]
+pub struct Can1 {
+    register_block: can1::RegisterBlock,
+}
+impl Deref for Can1 {
+    type Target = can1::RegisterBlock;
+    fn deref(&self) -> &can1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "CAN2" ]
+pub const CAN2: Peripheral<Can2> = unsafe { Peripheral::new(1073768448) };
+# [ doc = r" Register block" ]
+pub struct Can2 {
+    register_block: can1::RegisterBlock,
+}
+impl Deref for Can2 {
+    type Target = can1::RegisterBlock;
+    fn deref(&self) -> &can1::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "FLASH" ]
+pub const FLASH: Peripheral<Flash> = unsafe { Peripheral::new(1073888256) };
+# [ doc = "FLASH" ]
+pub mod flash {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Flash access control register" ]
+        pub acr: Acr,
+        # [ doc = "0x04 - Flash key register" ]
+        pub keyr: Keyr,
+        # [ doc = "0x08 - Flash option key register" ]
+        pub optkeyr: Optkeyr,
+        # [ doc = "0x0c - Status register" ]
+        pub sr: Sr,
+        # [ doc = "0x10 - Control register" ]
+        pub cr: Cr,
+        # [ doc = "0x14 - Flash option control register" ]
+        pub optcr: Optcr,
+    }
+    # [ doc = "Flash access control register" ]
+    pub struct Acr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Flash access control register" ]
+    pub mod acr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Acr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LatencyR {
+            bits: u8,
+        }
+        impl LatencyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrftenR {
+            bits: u8,
+        }
+        impl PrftenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IcenR {
+            bits: u8,
+        }
+        impl IcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcenR {
+            bits: u8,
+        }
+        impl DcenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DcrstR {
+            bits: u8,
+        }
+        impl DcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LatencyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LatencyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrftenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrftenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:2 - Latency" ]
+            # [ inline ( always ) ]
+            pub fn latency(&self) -> LatencyR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LatencyR { bits }
+            }
+            # [ doc = "Bit 8 - Prefetch enable" ]
+            # [ inline ( always ) ]
+            pub fn prften(&self) -> PrftenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrftenR { bits }
+            }
+            # [ doc = "Bit 9 - Instruction cache enable" ]
+            # [ inline ( always ) ]
+            pub fn icen(&self) -> IcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IcenR { bits }
+            }
+            # [ doc = "Bit 10 - Data cache enable" ]
+            # [ inline ( always ) ]
+            pub fn dcen(&self) -> DcenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcenR { bits }
+            }
+            # [ doc = "Bit 12 - Data cache reset" ]
+            # [ inline ( always ) ]
+            pub fn dcrst(&self) -> DcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DcrstR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:2 - Latency" ]
+            # [ inline ( always ) ]
+            pub fn latency(&mut self) -> _LatencyW {
+                _LatencyW { w: self }
+            }
+            # [ doc = "Bit 8 - Prefetch enable" ]
+            # [ inline ( always ) ]
+            pub fn prften(&mut self) -> _PrftenW {
+                _PrftenW { w: self }
+            }
+            # [ doc = "Bit 9 - Instruction cache enable" ]
+            # [ inline ( always ) ]
+            pub fn icen(&mut self) -> _IcenW {
+                _IcenW { w: self }
+            }
+            # [ doc = "Bit 10 - Data cache enable" ]
+            # [ inline ( always ) ]
+            pub fn dcen(&mut self) -> _DcenW {
+                _DcenW { w: self }
+            }
+            # [ doc = "Bit 11 - Instruction cache reset" ]
+            # [ inline ( always ) ]
+            pub fn icrst(&mut self) -> _IcrstW {
+                _IcrstW { w: self }
+            }
+            # [ doc = "Bit 12 - Data cache reset" ]
+            # [ inline ( always ) ]
+            pub fn dcrst(&mut self) -> _DcrstW {
+                _DcrstW { w: self }
+            }
+        }
+    }
+    # [ doc = "Flash key register" ]
+    pub struct Keyr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Flash key register" ]
+    pub mod keyr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Keyr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _KeyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _KeyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - FPEC key" ]
+            # [ inline ( always ) ]
+            pub fn key(&mut self) -> _KeyW {
+                _KeyW { w: self }
+            }
+        }
+    }
+    # [ doc = "Flash option key register" ]
+    pub struct Optkeyr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Flash option key register" ]
+    pub mod optkeyr {
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Optkeyr {
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OptkeyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OptkeyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Option byte key" ]
+            # [ inline ( always ) ]
+            pub fn optkey(&mut self) -> _OptkeyW {
+                _OptkeyW { w: self }
+            }
+        }
+    }
+    # [ doc = "Status register" ]
+    pub struct Sr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Status register" ]
+    pub mod sr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Sr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopR {
+            bits: u8,
+        }
+        impl EopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OperrR {
+            bits: u8,
+        }
+        impl OperrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WrperrR {
+            bits: u8,
+        }
+        impl WrperrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PgaerrR {
+            bits: u8,
+        }
+        impl PgaerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PgperrR {
+            bits: u8,
+        }
+        impl PgperrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PgserrR {
+            bits: u8,
+        }
+        impl PgserrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BsyR {
+            bits: u8,
+        }
+        impl BsyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OperrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OperrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WrperrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WrperrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PgaerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PgaerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PgperrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PgperrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PgserrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PgserrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - End of operation" ]
+            # [ inline ( always ) ]
+            pub fn eop(&self) -> EopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopR { bits }
+            }
+            # [ doc = "Bit 1 - Operation error" ]
+            # [ inline ( always ) ]
+            pub fn operr(&self) -> OperrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OperrR { bits }
+            }
+            # [ doc = "Bit 4 - Write protection error" ]
+            # [ inline ( always ) ]
+            pub fn wrperr(&self) -> WrperrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WrperrR { bits }
+            }
+            # [ doc = "Bit 5 - Programming alignment error" ]
+            # [ inline ( always ) ]
+            pub fn pgaerr(&self) -> PgaerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PgaerrR { bits }
+            }
+            # [ doc = "Bit 6 - Programming parallelism error" ]
+            # [ inline ( always ) ]
+            pub fn pgperr(&self) -> PgperrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PgperrR { bits }
+            }
+            # [ doc = "Bit 7 - Programming sequence error" ]
+            # [ inline ( always ) ]
+            pub fn pgserr(&self) -> PgserrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PgserrR { bits }
+            }
+            # [ doc = "Bit 16 - Busy" ]
+            # [ inline ( always ) ]
+            pub fn bsy(&self) -> BsyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BsyR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - End of operation" ]
+            # [ inline ( always ) ]
+            pub fn eop(&mut self) -> _EopW {
+                _EopW { w: self }
+            }
+            # [ doc = "Bit 1 - Operation error" ]
+            # [ inline ( always ) ]
+            pub fn operr(&mut self) -> _OperrW {
+                _OperrW { w: self }
+            }
+            # [ doc = "Bit 4 - Write protection error" ]
+            # [ inline ( always ) ]
+            pub fn wrperr(&mut self) -> _WrperrW {
+                _WrperrW { w: self }
+            }
+            # [ doc = "Bit 5 - Programming alignment error" ]
+            # [ inline ( always ) ]
+            pub fn pgaerr(&mut self) -> _PgaerrW {
+                _PgaerrW { w: self }
+            }
+            # [ doc = "Bit 6 - Programming parallelism error" ]
+            # [ inline ( always ) ]
+            pub fn pgperr(&mut self) -> _PgperrW {
+                _PgperrW { w: self }
+            }
+            # [ doc = "Bit 7 - Programming sequence error" ]
+            # [ inline ( always ) ]
+            pub fn pgserr(&mut self) -> _PgserrW {
+                _PgserrW { w: self }
+            }
+        }
+    }
+    # [ doc = "Control register" ]
+    pub struct Cr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Control register" ]
+    pub mod cr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Cr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PgR {
+            bits: u8,
+        }
+        impl PgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SerR {
+            bits: u8,
+        }
+        impl SerR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MerR {
+            bits: u8,
+        }
+        impl MerR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnbR {
+            bits: u8,
+        }
+        impl SnbR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsizeR {
+            bits: u8,
+        }
+        impl PsizeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StrtR {
+            bits: u8,
+        }
+        impl StrtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopieR {
+            bits: u8,
+        }
+        impl EopieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ErrieR {
+            bits: u8,
+        }
+        impl ErrieR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LockR {
+            bits: u8,
+        }
+        impl LockR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SerW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SerW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MerW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MerW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnbW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnbW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsizeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsizeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StrtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StrtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ErrieW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ErrieW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LockW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LockW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Programming" ]
+            # [ inline ( always ) ]
+            pub fn pg(&self) -> PgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PgR { bits }
+            }
+            # [ doc = "Bit 1 - Sector Erase" ]
+            # [ inline ( always ) ]
+            pub fn ser(&self) -> SerR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SerR { bits }
+            }
+            # [ doc = "Bit 2 - Mass Erase" ]
+            # [ inline ( always ) ]
+            pub fn mer(&self) -> MerR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MerR { bits }
+            }
+            # [ doc = "Bits 3:6 - Sector number" ]
+            # [ inline ( always ) ]
+            pub fn snb(&self) -> SnbR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnbR { bits }
+            }
+            # [ doc = "Bits 8:9 - Program size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&self) -> PsizeR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsizeR { bits }
+            }
+            # [ doc = "Bit 16 - Start" ]
+            # [ inline ( always ) ]
+            pub fn strt(&self) -> StrtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StrtR { bits }
+            }
+            # [ doc = "Bit 24 - End of operation interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eopie(&self) -> EopieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopieR { bits }
+            }
+            # [ doc = "Bit 25 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn errie(&self) -> ErrieR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ErrieR { bits }
+            }
+            # [ doc = "Bit 31 - Lock" ]
+            # [ inline ( always ) ]
+            pub fn lock(&self) -> LockR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LockR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2147483648 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Programming" ]
+            # [ inline ( always ) ]
+            pub fn pg(&mut self) -> _PgW {
+                _PgW { w: self }
+            }
+            # [ doc = "Bit 1 - Sector Erase" ]
+            # [ inline ( always ) ]
+            pub fn ser(&mut self) -> _SerW {
+                _SerW { w: self }
+            }
+            # [ doc = "Bit 2 - Mass Erase" ]
+            # [ inline ( always ) ]
+            pub fn mer(&mut self) -> _MerW {
+                _MerW { w: self }
+            }
+            # [ doc = "Bits 3:6 - Sector number" ]
+            # [ inline ( always ) ]
+            pub fn snb(&mut self) -> _SnbW {
+                _SnbW { w: self }
+            }
+            # [ doc = "Bits 8:9 - Program size" ]
+            # [ inline ( always ) ]
+            pub fn psize(&mut self) -> _PsizeW {
+                _PsizeW { w: self }
+            }
+            # [ doc = "Bit 16 - Start" ]
+            # [ inline ( always ) ]
+            pub fn strt(&mut self) -> _StrtW {
+                _StrtW { w: self }
+            }
+            # [ doc = "Bit 24 - End of operation interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn eopie(&mut self) -> _EopieW {
+                _EopieW { w: self }
+            }
+            # [ doc = "Bit 25 - Error interrupt enable" ]
+            # [ inline ( always ) ]
+            pub fn errie(&mut self) -> _ErrieW {
+                _ErrieW { w: self }
+            }
+            # [ doc = "Bit 31 - Lock" ]
+            # [ inline ( always ) ]
+            pub fn lock(&mut self) -> _LockW {
+                _LockW { w: self }
+            }
+        }
+    }
+    # [ doc = "Flash option control register" ]
+    pub struct Optcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Flash option control register" ]
+    pub mod optcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Optcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OptlockR {
+            bits: u8,
+        }
+        impl OptlockR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OptstrtR {
+            bits: u8,
+        }
+        impl OptstrtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BorLevR {
+            bits: u8,
+        }
+        impl BorLevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WdgSwR {
+            bits: u8,
+        }
+        impl WdgSwR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NRstStopR {
+            bits: u8,
+        }
+        impl NRstStopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NRstStdbyR {
+            bits: u8,
+        }
+        impl NRstStdbyR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RdpR {
+            bits: u8,
+        }
+        impl RdpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NWrpR {
+            bits: u16,
+        }
+        impl NWrpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OptlockW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OptlockW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OptstrtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OptstrtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BorLevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BorLevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WdgSwW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WdgSwW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NRstStopW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NRstStopW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NRstStdbyW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NRstStdbyW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RdpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RdpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 255;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NWrpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NWrpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Option lock" ]
+            # [ inline ( always ) ]
+            pub fn optlock(&self) -> OptlockR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OptlockR { bits }
+            }
+            # [ doc = "Bit 1 - Option start" ]
+            # [ inline ( always ) ]
+            pub fn optstrt(&self) -> OptstrtR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OptstrtR { bits }
+            }
+            # [ doc = "Bits 2:3 - BOR reset Level" ]
+            # [ inline ( always ) ]
+            pub fn bor_lev(&self) -> BorLevR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BorLevR { bits }
+            }
+            # [ doc = "Bit 5 - WDG_SW User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn wdg_sw(&self) -> WdgSwR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WdgSwR { bits }
+            }
+            # [ doc = "Bit 6 - nRST_STOP User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn n_rst_stop(&self) -> NRstStopR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NRstStopR { bits }
+            }
+            # [ doc = "Bit 7 - nRST_STDBY User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn n_rst_stdby(&self) -> NRstStdbyR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NRstStdbyR { bits }
+            }
+            # [ doc = "Bits 8:15 - Read protect" ]
+            # [ inline ( always ) ]
+            pub fn rdp(&self) -> RdpR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RdpR { bits }
+            }
+            # [ doc = "Bits 16:27 - Not write protect" ]
+            # [ inline ( always ) ]
+            pub fn n_wrp(&self) -> NWrpR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NWrpR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 20 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Option lock" ]
+            # [ inline ( always ) ]
+            pub fn optlock(&mut self) -> _OptlockW {
+                _OptlockW { w: self }
+            }
+            # [ doc = "Bit 1 - Option start" ]
+            # [ inline ( always ) ]
+            pub fn optstrt(&mut self) -> _OptstrtW {
+                _OptstrtW { w: self }
+            }
+            # [ doc = "Bits 2:3 - BOR reset Level" ]
+            # [ inline ( always ) ]
+            pub fn bor_lev(&mut self) -> _BorLevW {
+                _BorLevW { w: self }
+            }
+            # [ doc = "Bit 5 - WDG_SW User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn wdg_sw(&mut self) -> _WdgSwW {
+                _WdgSwW { w: self }
+            }
+            # [ doc = "Bit 6 - nRST_STOP User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn n_rst_stop(&mut self) -> _NRstStopW {
+                _NRstStopW { w: self }
+            }
+            # [ doc = "Bit 7 - nRST_STDBY User option bytes" ]
+            # [ inline ( always ) ]
+            pub fn n_rst_stdby(&mut self) -> _NRstStdbyW {
+                _NRstStdbyW { w: self }
+            }
+            # [ doc = "Bits 8:15 - Read protect" ]
+            # [ inline ( always ) ]
+            pub fn rdp(&mut self) -> _RdpW {
+                _RdpW { w: self }
+            }
+            # [ doc = "Bits 16:27 - Not write protect" ]
+            # [ inline ( always ) ]
+            pub fn n_wrp(&mut self) -> _NWrpW {
+                _NWrpW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "FLASH" ]
+pub struct Flash {
+    register_block: flash::RegisterBlock,
+}
+impl Deref for Flash {
+    type Target = flash::RegisterBlock;
+    fn deref(&self) -> &flash::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "External interrupt/event controller" ]
+pub const EXTI: Peripheral<Exti> = unsafe { Peripheral::new(1073822720) };
+# [ doc = "External interrupt/event controller" ]
+pub mod exti {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Interrupt mask register (EXTI_IMR)" ]
+        pub imr: Imr,
+        # [ doc = "0x04 - Event mask register (EXTI_EMR)" ]
+        pub emr: Emr,
+        # [ doc = "0x08 - Rising Trigger selection register (EXTI_RTSR)" ]
+        pub rtsr: Rtsr,
+        # [ doc = "0x0c - Falling Trigger selection register (EXTI_FTSR)" ]
+        pub ftsr: Ftsr,
+        # [ doc = "0x10 - Software interrupt event register (EXTI_SWIER)" ]
+        pub swier: Swier,
+        # [ doc = "0x14 - Pending register (EXTI_PR)" ]
+        pub pr: Pr,
+    }
+    # [ doc = "Interrupt mask register (EXTI_IMR)" ]
+    pub struct Imr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Interrupt mask register (EXTI_IMR)" ]
+    pub mod imr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Imr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr0R {
+            bits: u8,
+        }
+        impl Mr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr1R {
+            bits: u8,
+        }
+        impl Mr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr2R {
+            bits: u8,
+        }
+        impl Mr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr3R {
+            bits: u8,
+        }
+        impl Mr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr4R {
+            bits: u8,
+        }
+        impl Mr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr5R {
+            bits: u8,
+        }
+        impl Mr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr6R {
+            bits: u8,
+        }
+        impl Mr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr7R {
+            bits: u8,
+        }
+        impl Mr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr8R {
+            bits: u8,
+        }
+        impl Mr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr9R {
+            bits: u8,
+        }
+        impl Mr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr10R {
+            bits: u8,
+        }
+        impl Mr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr11R {
+            bits: u8,
+        }
+        impl Mr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr12R {
+            bits: u8,
+        }
+        impl Mr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr13R {
+            bits: u8,
+        }
+        impl Mr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr14R {
+            bits: u8,
+        }
+        impl Mr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr15R {
+            bits: u8,
+        }
+        impl Mr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr16R {
+            bits: u8,
+        }
+        impl Mr16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr17R {
+            bits: u8,
+        }
+        impl Mr17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr18R {
+            bits: u8,
+        }
+        impl Mr18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr19R {
+            bits: u8,
+        }
+        impl Mr19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr20R {
+            bits: u8,
+        }
+        impl Mr20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr21R {
+            bits: u8,
+        }
+        impl Mr21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr22R {
+            bits: u8,
+        }
+        impl Mr22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Interrupt Mask on line 0" ]
+            # [ inline ( always ) ]
+            pub fn mr0(&self) -> Mr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr0R { bits }
+            }
+            # [ doc = "Bit 1 - Interrupt Mask on line 1" ]
+            # [ inline ( always ) ]
+            pub fn mr1(&self) -> Mr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr1R { bits }
+            }
+            # [ doc = "Bit 2 - Interrupt Mask on line 2" ]
+            # [ inline ( always ) ]
+            pub fn mr2(&self) -> Mr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr2R { bits }
+            }
+            # [ doc = "Bit 3 - Interrupt Mask on line 3" ]
+            # [ inline ( always ) ]
+            pub fn mr3(&self) -> Mr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr3R { bits }
+            }
+            # [ doc = "Bit 4 - Interrupt Mask on line 4" ]
+            # [ inline ( always ) ]
+            pub fn mr4(&self) -> Mr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr4R { bits }
+            }
+            # [ doc = "Bit 5 - Interrupt Mask on line 5" ]
+            # [ inline ( always ) ]
+            pub fn mr5(&self) -> Mr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr5R { bits }
+            }
+            # [ doc = "Bit 6 - Interrupt Mask on line 6" ]
+            # [ inline ( always ) ]
+            pub fn mr6(&self) -> Mr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr6R { bits }
+            }
+            # [ doc = "Bit 7 - Interrupt Mask on line 7" ]
+            # [ inline ( always ) ]
+            pub fn mr7(&self) -> Mr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr7R { bits }
+            }
+            # [ doc = "Bit 8 - Interrupt Mask on line 8" ]
+            # [ inline ( always ) ]
+            pub fn mr8(&self) -> Mr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr8R { bits }
+            }
+            # [ doc = "Bit 9 - Interrupt Mask on line 9" ]
+            # [ inline ( always ) ]
+            pub fn mr9(&self) -> Mr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr9R { bits }
+            }
+            # [ doc = "Bit 10 - Interrupt Mask on line 10" ]
+            # [ inline ( always ) ]
+            pub fn mr10(&self) -> Mr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr10R { bits }
+            }
+            # [ doc = "Bit 11 - Interrupt Mask on line 11" ]
+            # [ inline ( always ) ]
+            pub fn mr11(&self) -> Mr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr11R { bits }
+            }
+            # [ doc = "Bit 12 - Interrupt Mask on line 12" ]
+            # [ inline ( always ) ]
+            pub fn mr12(&self) -> Mr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr12R { bits }
+            }
+            # [ doc = "Bit 13 - Interrupt Mask on line 13" ]
+            # [ inline ( always ) ]
+            pub fn mr13(&self) -> Mr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr13R { bits }
+            }
+            # [ doc = "Bit 14 - Interrupt Mask on line 14" ]
+            # [ inline ( always ) ]
+            pub fn mr14(&self) -> Mr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr14R { bits }
+            }
+            # [ doc = "Bit 15 - Interrupt Mask on line 15" ]
+            # [ inline ( always ) ]
+            pub fn mr15(&self) -> Mr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr15R { bits }
+            }
+            # [ doc = "Bit 16 - Interrupt Mask on line 16" ]
+            # [ inline ( always ) ]
+            pub fn mr16(&self) -> Mr16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr16R { bits }
+            }
+            # [ doc = "Bit 17 - Interrupt Mask on line 17" ]
+            # [ inline ( always ) ]
+            pub fn mr17(&self) -> Mr17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr17R { bits }
+            }
+            # [ doc = "Bit 18 - Interrupt Mask on line 18" ]
+            # [ inline ( always ) ]
+            pub fn mr18(&self) -> Mr18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr18R { bits }
+            }
+            # [ doc = "Bit 19 - Interrupt Mask on line 19" ]
+            # [ inline ( always ) ]
+            pub fn mr19(&self) -> Mr19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr19R { bits }
+            }
+            # [ doc = "Bit 20 - Interrupt Mask on line 20" ]
+            # [ inline ( always ) ]
+            pub fn mr20(&self) -> Mr20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr20R { bits }
+            }
+            # [ doc = "Bit 21 - Interrupt Mask on line 21" ]
+            # [ inline ( always ) ]
+            pub fn mr21(&self) -> Mr21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr21R { bits }
+            }
+            # [ doc = "Bit 22 - Interrupt Mask on line 22" ]
+            # [ inline ( always ) ]
+            pub fn mr22(&self) -> Mr22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Interrupt Mask on line 0" ]
+            # [ inline ( always ) ]
+            pub fn mr0(&mut self) -> _Mr0W {
+                _Mr0W { w: self }
+            }
+            # [ doc = "Bit 1 - Interrupt Mask on line 1" ]
+            # [ inline ( always ) ]
+            pub fn mr1(&mut self) -> _Mr1W {
+                _Mr1W { w: self }
+            }
+            # [ doc = "Bit 2 - Interrupt Mask on line 2" ]
+            # [ inline ( always ) ]
+            pub fn mr2(&mut self) -> _Mr2W {
+                _Mr2W { w: self }
+            }
+            # [ doc = "Bit 3 - Interrupt Mask on line 3" ]
+            # [ inline ( always ) ]
+            pub fn mr3(&mut self) -> _Mr3W {
+                _Mr3W { w: self }
+            }
+            # [ doc = "Bit 4 - Interrupt Mask on line 4" ]
+            # [ inline ( always ) ]
+            pub fn mr4(&mut self) -> _Mr4W {
+                _Mr4W { w: self }
+            }
+            # [ doc = "Bit 5 - Interrupt Mask on line 5" ]
+            # [ inline ( always ) ]
+            pub fn mr5(&mut self) -> _Mr5W {
+                _Mr5W { w: self }
+            }
+            # [ doc = "Bit 6 - Interrupt Mask on line 6" ]
+            # [ inline ( always ) ]
+            pub fn mr6(&mut self) -> _Mr6W {
+                _Mr6W { w: self }
+            }
+            # [ doc = "Bit 7 - Interrupt Mask on line 7" ]
+            # [ inline ( always ) ]
+            pub fn mr7(&mut self) -> _Mr7W {
+                _Mr7W { w: self }
+            }
+            # [ doc = "Bit 8 - Interrupt Mask on line 8" ]
+            # [ inline ( always ) ]
+            pub fn mr8(&mut self) -> _Mr8W {
+                _Mr8W { w: self }
+            }
+            # [ doc = "Bit 9 - Interrupt Mask on line 9" ]
+            # [ inline ( always ) ]
+            pub fn mr9(&mut self) -> _Mr9W {
+                _Mr9W { w: self }
+            }
+            # [ doc = "Bit 10 - Interrupt Mask on line 10" ]
+            # [ inline ( always ) ]
+            pub fn mr10(&mut self) -> _Mr10W {
+                _Mr10W { w: self }
+            }
+            # [ doc = "Bit 11 - Interrupt Mask on line 11" ]
+            # [ inline ( always ) ]
+            pub fn mr11(&mut self) -> _Mr11W {
+                _Mr11W { w: self }
+            }
+            # [ doc = "Bit 12 - Interrupt Mask on line 12" ]
+            # [ inline ( always ) ]
+            pub fn mr12(&mut self) -> _Mr12W {
+                _Mr12W { w: self }
+            }
+            # [ doc = "Bit 13 - Interrupt Mask on line 13" ]
+            # [ inline ( always ) ]
+            pub fn mr13(&mut self) -> _Mr13W {
+                _Mr13W { w: self }
+            }
+            # [ doc = "Bit 14 - Interrupt Mask on line 14" ]
+            # [ inline ( always ) ]
+            pub fn mr14(&mut self) -> _Mr14W {
+                _Mr14W { w: self }
+            }
+            # [ doc = "Bit 15 - Interrupt Mask on line 15" ]
+            # [ inline ( always ) ]
+            pub fn mr15(&mut self) -> _Mr15W {
+                _Mr15W { w: self }
+            }
+            # [ doc = "Bit 16 - Interrupt Mask on line 16" ]
+            # [ inline ( always ) ]
+            pub fn mr16(&mut self) -> _Mr16W {
+                _Mr16W { w: self }
+            }
+            # [ doc = "Bit 17 - Interrupt Mask on line 17" ]
+            # [ inline ( always ) ]
+            pub fn mr17(&mut self) -> _Mr17W {
+                _Mr17W { w: self }
+            }
+            # [ doc = "Bit 18 - Interrupt Mask on line 18" ]
+            # [ inline ( always ) ]
+            pub fn mr18(&mut self) -> _Mr18W {
+                _Mr18W { w: self }
+            }
+            # [ doc = "Bit 19 - Interrupt Mask on line 19" ]
+            # [ inline ( always ) ]
+            pub fn mr19(&mut self) -> _Mr19W {
+                _Mr19W { w: self }
+            }
+            # [ doc = "Bit 20 - Interrupt Mask on line 20" ]
+            # [ inline ( always ) ]
+            pub fn mr20(&mut self) -> _Mr20W {
+                _Mr20W { w: self }
+            }
+            # [ doc = "Bit 21 - Interrupt Mask on line 21" ]
+            # [ inline ( always ) ]
+            pub fn mr21(&mut self) -> _Mr21W {
+                _Mr21W { w: self }
+            }
+            # [ doc = "Bit 22 - Interrupt Mask on line 22" ]
+            # [ inline ( always ) ]
+            pub fn mr22(&mut self) -> _Mr22W {
+                _Mr22W { w: self }
+            }
+        }
+    }
+    # [ doc = "Event mask register (EXTI_EMR)" ]
+    pub struct Emr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Event mask register (EXTI_EMR)" ]
+    pub mod emr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Emr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr0R {
+            bits: u8,
+        }
+        impl Mr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr1R {
+            bits: u8,
+        }
+        impl Mr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr2R {
+            bits: u8,
+        }
+        impl Mr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr3R {
+            bits: u8,
+        }
+        impl Mr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr4R {
+            bits: u8,
+        }
+        impl Mr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr5R {
+            bits: u8,
+        }
+        impl Mr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr6R {
+            bits: u8,
+        }
+        impl Mr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr7R {
+            bits: u8,
+        }
+        impl Mr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr8R {
+            bits: u8,
+        }
+        impl Mr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr9R {
+            bits: u8,
+        }
+        impl Mr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr10R {
+            bits: u8,
+        }
+        impl Mr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr11R {
+            bits: u8,
+        }
+        impl Mr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr12R {
+            bits: u8,
+        }
+        impl Mr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr13R {
+            bits: u8,
+        }
+        impl Mr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr14R {
+            bits: u8,
+        }
+        impl Mr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr15R {
+            bits: u8,
+        }
+        impl Mr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr16R {
+            bits: u8,
+        }
+        impl Mr16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr17R {
+            bits: u8,
+        }
+        impl Mr17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr18R {
+            bits: u8,
+        }
+        impl Mr18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr19R {
+            bits: u8,
+        }
+        impl Mr19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr20R {
+            bits: u8,
+        }
+        impl Mr20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr21R {
+            bits: u8,
+        }
+        impl Mr21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Mr22R {
+            bits: u8,
+        }
+        impl Mr22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Mr22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Mr22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Event Mask on line 0" ]
+            # [ inline ( always ) ]
+            pub fn mr0(&self) -> Mr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr0R { bits }
+            }
+            # [ doc = "Bit 1 - Event Mask on line 1" ]
+            # [ inline ( always ) ]
+            pub fn mr1(&self) -> Mr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr1R { bits }
+            }
+            # [ doc = "Bit 2 - Event Mask on line 2" ]
+            # [ inline ( always ) ]
+            pub fn mr2(&self) -> Mr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr2R { bits }
+            }
+            # [ doc = "Bit 3 - Event Mask on line 3" ]
+            # [ inline ( always ) ]
+            pub fn mr3(&self) -> Mr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr3R { bits }
+            }
+            # [ doc = "Bit 4 - Event Mask on line 4" ]
+            # [ inline ( always ) ]
+            pub fn mr4(&self) -> Mr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr4R { bits }
+            }
+            # [ doc = "Bit 5 - Event Mask on line 5" ]
+            # [ inline ( always ) ]
+            pub fn mr5(&self) -> Mr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr5R { bits }
+            }
+            # [ doc = "Bit 6 - Event Mask on line 6" ]
+            # [ inline ( always ) ]
+            pub fn mr6(&self) -> Mr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr6R { bits }
+            }
+            # [ doc = "Bit 7 - Event Mask on line 7" ]
+            # [ inline ( always ) ]
+            pub fn mr7(&self) -> Mr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr7R { bits }
+            }
+            # [ doc = "Bit 8 - Event Mask on line 8" ]
+            # [ inline ( always ) ]
+            pub fn mr8(&self) -> Mr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr8R { bits }
+            }
+            # [ doc = "Bit 9 - Event Mask on line 9" ]
+            # [ inline ( always ) ]
+            pub fn mr9(&self) -> Mr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr9R { bits }
+            }
+            # [ doc = "Bit 10 - Event Mask on line 10" ]
+            # [ inline ( always ) ]
+            pub fn mr10(&self) -> Mr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr10R { bits }
+            }
+            # [ doc = "Bit 11 - Event Mask on line 11" ]
+            # [ inline ( always ) ]
+            pub fn mr11(&self) -> Mr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr11R { bits }
+            }
+            # [ doc = "Bit 12 - Event Mask on line 12" ]
+            # [ inline ( always ) ]
+            pub fn mr12(&self) -> Mr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr12R { bits }
+            }
+            # [ doc = "Bit 13 - Event Mask on line 13" ]
+            # [ inline ( always ) ]
+            pub fn mr13(&self) -> Mr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr13R { bits }
+            }
+            # [ doc = "Bit 14 - Event Mask on line 14" ]
+            # [ inline ( always ) ]
+            pub fn mr14(&self) -> Mr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr14R { bits }
+            }
+            # [ doc = "Bit 15 - Event Mask on line 15" ]
+            # [ inline ( always ) ]
+            pub fn mr15(&self) -> Mr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr15R { bits }
+            }
+            # [ doc = "Bit 16 - Event Mask on line 16" ]
+            # [ inline ( always ) ]
+            pub fn mr16(&self) -> Mr16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr16R { bits }
+            }
+            # [ doc = "Bit 17 - Event Mask on line 17" ]
+            # [ inline ( always ) ]
+            pub fn mr17(&self) -> Mr17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr17R { bits }
+            }
+            # [ doc = "Bit 18 - Event Mask on line 18" ]
+            # [ inline ( always ) ]
+            pub fn mr18(&self) -> Mr18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr18R { bits }
+            }
+            # [ doc = "Bit 19 - Event Mask on line 19" ]
+            # [ inline ( always ) ]
+            pub fn mr19(&self) -> Mr19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr19R { bits }
+            }
+            # [ doc = "Bit 20 - Event Mask on line 20" ]
+            # [ inline ( always ) ]
+            pub fn mr20(&self) -> Mr20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr20R { bits }
+            }
+            # [ doc = "Bit 21 - Event Mask on line 21" ]
+            # [ inline ( always ) ]
+            pub fn mr21(&self) -> Mr21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr21R { bits }
+            }
+            # [ doc = "Bit 22 - Event Mask on line 22" ]
+            # [ inline ( always ) ]
+            pub fn mr22(&self) -> Mr22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Mr22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Event Mask on line 0" ]
+            # [ inline ( always ) ]
+            pub fn mr0(&mut self) -> _Mr0W {
+                _Mr0W { w: self }
+            }
+            # [ doc = "Bit 1 - Event Mask on line 1" ]
+            # [ inline ( always ) ]
+            pub fn mr1(&mut self) -> _Mr1W {
+                _Mr1W { w: self }
+            }
+            # [ doc = "Bit 2 - Event Mask on line 2" ]
+            # [ inline ( always ) ]
+            pub fn mr2(&mut self) -> _Mr2W {
+                _Mr2W { w: self }
+            }
+            # [ doc = "Bit 3 - Event Mask on line 3" ]
+            # [ inline ( always ) ]
+            pub fn mr3(&mut self) -> _Mr3W {
+                _Mr3W { w: self }
+            }
+            # [ doc = "Bit 4 - Event Mask on line 4" ]
+            # [ inline ( always ) ]
+            pub fn mr4(&mut self) -> _Mr4W {
+                _Mr4W { w: self }
+            }
+            # [ doc = "Bit 5 - Event Mask on line 5" ]
+            # [ inline ( always ) ]
+            pub fn mr5(&mut self) -> _Mr5W {
+                _Mr5W { w: self }
+            }
+            # [ doc = "Bit 6 - Event Mask on line 6" ]
+            # [ inline ( always ) ]
+            pub fn mr6(&mut self) -> _Mr6W {
+                _Mr6W { w: self }
+            }
+            # [ doc = "Bit 7 - Event Mask on line 7" ]
+            # [ inline ( always ) ]
+            pub fn mr7(&mut self) -> _Mr7W {
+                _Mr7W { w: self }
+            }
+            # [ doc = "Bit 8 - Event Mask on line 8" ]
+            # [ inline ( always ) ]
+            pub fn mr8(&mut self) -> _Mr8W {
+                _Mr8W { w: self }
+            }
+            # [ doc = "Bit 9 - Event Mask on line 9" ]
+            # [ inline ( always ) ]
+            pub fn mr9(&mut self) -> _Mr9W {
+                _Mr9W { w: self }
+            }
+            # [ doc = "Bit 10 - Event Mask on line 10" ]
+            # [ inline ( always ) ]
+            pub fn mr10(&mut self) -> _Mr10W {
+                _Mr10W { w: self }
+            }
+            # [ doc = "Bit 11 - Event Mask on line 11" ]
+            # [ inline ( always ) ]
+            pub fn mr11(&mut self) -> _Mr11W {
+                _Mr11W { w: self }
+            }
+            # [ doc = "Bit 12 - Event Mask on line 12" ]
+            # [ inline ( always ) ]
+            pub fn mr12(&mut self) -> _Mr12W {
+                _Mr12W { w: self }
+            }
+            # [ doc = "Bit 13 - Event Mask on line 13" ]
+            # [ inline ( always ) ]
+            pub fn mr13(&mut self) -> _Mr13W {
+                _Mr13W { w: self }
+            }
+            # [ doc = "Bit 14 - Event Mask on line 14" ]
+            # [ inline ( always ) ]
+            pub fn mr14(&mut self) -> _Mr14W {
+                _Mr14W { w: self }
+            }
+            # [ doc = "Bit 15 - Event Mask on line 15" ]
+            # [ inline ( always ) ]
+            pub fn mr15(&mut self) -> _Mr15W {
+                _Mr15W { w: self }
+            }
+            # [ doc = "Bit 16 - Event Mask on line 16" ]
+            # [ inline ( always ) ]
+            pub fn mr16(&mut self) -> _Mr16W {
+                _Mr16W { w: self }
+            }
+            # [ doc = "Bit 17 - Event Mask on line 17" ]
+            # [ inline ( always ) ]
+            pub fn mr17(&mut self) -> _Mr17W {
+                _Mr17W { w: self }
+            }
+            # [ doc = "Bit 18 - Event Mask on line 18" ]
+            # [ inline ( always ) ]
+            pub fn mr18(&mut self) -> _Mr18W {
+                _Mr18W { w: self }
+            }
+            # [ doc = "Bit 19 - Event Mask on line 19" ]
+            # [ inline ( always ) ]
+            pub fn mr19(&mut self) -> _Mr19W {
+                _Mr19W { w: self }
+            }
+            # [ doc = "Bit 20 - Event Mask on line 20" ]
+            # [ inline ( always ) ]
+            pub fn mr20(&mut self) -> _Mr20W {
+                _Mr20W { w: self }
+            }
+            # [ doc = "Bit 21 - Event Mask on line 21" ]
+            # [ inline ( always ) ]
+            pub fn mr21(&mut self) -> _Mr21W {
+                _Mr21W { w: self }
+            }
+            # [ doc = "Bit 22 - Event Mask on line 22" ]
+            # [ inline ( always ) ]
+            pub fn mr22(&mut self) -> _Mr22W {
+                _Mr22W { w: self }
+            }
+        }
+    }
+    # [ doc = "Rising Trigger selection register (EXTI_RTSR)" ]
+    pub struct Rtsr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Rising Trigger selection register (EXTI_RTSR)" ]
+    pub mod rtsr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Rtsr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr0R {
+            bits: u8,
+        }
+        impl Tr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr1R {
+            bits: u8,
+        }
+        impl Tr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr2R {
+            bits: u8,
+        }
+        impl Tr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr3R {
+            bits: u8,
+        }
+        impl Tr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr4R {
+            bits: u8,
+        }
+        impl Tr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr5R {
+            bits: u8,
+        }
+        impl Tr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr6R {
+            bits: u8,
+        }
+        impl Tr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr7R {
+            bits: u8,
+        }
+        impl Tr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr8R {
+            bits: u8,
+        }
+        impl Tr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr9R {
+            bits: u8,
+        }
+        impl Tr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr10R {
+            bits: u8,
+        }
+        impl Tr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr11R {
+            bits: u8,
+        }
+        impl Tr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr12R {
+            bits: u8,
+        }
+        impl Tr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr13R {
+            bits: u8,
+        }
+        impl Tr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr14R {
+            bits: u8,
+        }
+        impl Tr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr15R {
+            bits: u8,
+        }
+        impl Tr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr16R {
+            bits: u8,
+        }
+        impl Tr16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr17R {
+            bits: u8,
+        }
+        impl Tr17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr18R {
+            bits: u8,
+        }
+        impl Tr18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr19R {
+            bits: u8,
+        }
+        impl Tr19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr20R {
+            bits: u8,
+        }
+        impl Tr20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr21R {
+            bits: u8,
+        }
+        impl Tr21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr22R {
+            bits: u8,
+        }
+        impl Tr22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Rising trigger event configuration of line 0" ]
+            # [ inline ( always ) ]
+            pub fn tr0(&self) -> Tr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr0R { bits }
+            }
+            # [ doc = "Bit 1 - Rising trigger event configuration of line 1" ]
+            # [ inline ( always ) ]
+            pub fn tr1(&self) -> Tr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr1R { bits }
+            }
+            # [ doc = "Bit 2 - Rising trigger event configuration of line 2" ]
+            # [ inline ( always ) ]
+            pub fn tr2(&self) -> Tr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr2R { bits }
+            }
+            # [ doc = "Bit 3 - Rising trigger event configuration of line 3" ]
+            # [ inline ( always ) ]
+            pub fn tr3(&self) -> Tr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr3R { bits }
+            }
+            # [ doc = "Bit 4 - Rising trigger event configuration of line 4" ]
+            # [ inline ( always ) ]
+            pub fn tr4(&self) -> Tr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr4R { bits }
+            }
+            # [ doc = "Bit 5 - Rising trigger event configuration of line 5" ]
+            # [ inline ( always ) ]
+            pub fn tr5(&self) -> Tr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr5R { bits }
+            }
+            # [ doc = "Bit 6 - Rising trigger event configuration of line 6" ]
+            # [ inline ( always ) ]
+            pub fn tr6(&self) -> Tr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr6R { bits }
+            }
+            # [ doc = "Bit 7 - Rising trigger event configuration of line 7" ]
+            # [ inline ( always ) ]
+            pub fn tr7(&self) -> Tr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr7R { bits }
+            }
+            # [ doc = "Bit 8 - Rising trigger event configuration of line 8" ]
+            # [ inline ( always ) ]
+            pub fn tr8(&self) -> Tr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr8R { bits }
+            }
+            # [ doc = "Bit 9 - Rising trigger event configuration of line 9" ]
+            # [ inline ( always ) ]
+            pub fn tr9(&self) -> Tr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr9R { bits }
+            }
+            # [ doc = "Bit 10 - Rising trigger event configuration of line 10" ]
+            # [ inline ( always ) ]
+            pub fn tr10(&self) -> Tr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr10R { bits }
+            }
+            # [ doc = "Bit 11 - Rising trigger event configuration of line 11" ]
+            # [ inline ( always ) ]
+            pub fn tr11(&self) -> Tr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr11R { bits }
+            }
+            # [ doc = "Bit 12 - Rising trigger event configuration of line 12" ]
+            # [ inline ( always ) ]
+            pub fn tr12(&self) -> Tr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr12R { bits }
+            }
+            # [ doc = "Bit 13 - Rising trigger event configuration of line 13" ]
+            # [ inline ( always ) ]
+            pub fn tr13(&self) -> Tr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr13R { bits }
+            }
+            # [ doc = "Bit 14 - Rising trigger event configuration of line 14" ]
+            # [ inline ( always ) ]
+            pub fn tr14(&self) -> Tr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr14R { bits }
+            }
+            # [ doc = "Bit 15 - Rising trigger event configuration of line 15" ]
+            # [ inline ( always ) ]
+            pub fn tr15(&self) -> Tr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr15R { bits }
+            }
+            # [ doc = "Bit 16 - Rising trigger event configuration of line 16" ]
+            # [ inline ( always ) ]
+            pub fn tr16(&self) -> Tr16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr16R { bits }
+            }
+            # [ doc = "Bit 17 - Rising trigger event configuration of line 17" ]
+            # [ inline ( always ) ]
+            pub fn tr17(&self) -> Tr17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr17R { bits }
+            }
+            # [ doc = "Bit 18 - Rising trigger event configuration of line 18" ]
+            # [ inline ( always ) ]
+            pub fn tr18(&self) -> Tr18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr18R { bits }
+            }
+            # [ doc = "Bit 19 - Rising trigger event configuration of line 19" ]
+            # [ inline ( always ) ]
+            pub fn tr19(&self) -> Tr19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr19R { bits }
+            }
+            # [ doc = "Bit 20 - Rising trigger event configuration of line 20" ]
+            # [ inline ( always ) ]
+            pub fn tr20(&self) -> Tr20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr20R { bits }
+            }
+            # [ doc = "Bit 21 - Rising trigger event configuration of line 21" ]
+            # [ inline ( always ) ]
+            pub fn tr21(&self) -> Tr21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr21R { bits }
+            }
+            # [ doc = "Bit 22 - Rising trigger event configuration of line 22" ]
+            # [ inline ( always ) ]
+            pub fn tr22(&self) -> Tr22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Rising trigger event configuration of line 0" ]
+            # [ inline ( always ) ]
+            pub fn tr0(&mut self) -> _Tr0W {
+                _Tr0W { w: self }
+            }
+            # [ doc = "Bit 1 - Rising trigger event configuration of line 1" ]
+            # [ inline ( always ) ]
+            pub fn tr1(&mut self) -> _Tr1W {
+                _Tr1W { w: self }
+            }
+            # [ doc = "Bit 2 - Rising trigger event configuration of line 2" ]
+            # [ inline ( always ) ]
+            pub fn tr2(&mut self) -> _Tr2W {
+                _Tr2W { w: self }
+            }
+            # [ doc = "Bit 3 - Rising trigger event configuration of line 3" ]
+            # [ inline ( always ) ]
+            pub fn tr3(&mut self) -> _Tr3W {
+                _Tr3W { w: self }
+            }
+            # [ doc = "Bit 4 - Rising trigger event configuration of line 4" ]
+            # [ inline ( always ) ]
+            pub fn tr4(&mut self) -> _Tr4W {
+                _Tr4W { w: self }
+            }
+            # [ doc = "Bit 5 - Rising trigger event configuration of line 5" ]
+            # [ inline ( always ) ]
+            pub fn tr5(&mut self) -> _Tr5W {
+                _Tr5W { w: self }
+            }
+            # [ doc = "Bit 6 - Rising trigger event configuration of line 6" ]
+            # [ inline ( always ) ]
+            pub fn tr6(&mut self) -> _Tr6W {
+                _Tr6W { w: self }
+            }
+            # [ doc = "Bit 7 - Rising trigger event configuration of line 7" ]
+            # [ inline ( always ) ]
+            pub fn tr7(&mut self) -> _Tr7W {
+                _Tr7W { w: self }
+            }
+            # [ doc = "Bit 8 - Rising trigger event configuration of line 8" ]
+            # [ inline ( always ) ]
+            pub fn tr8(&mut self) -> _Tr8W {
+                _Tr8W { w: self }
+            }
+            # [ doc = "Bit 9 - Rising trigger event configuration of line 9" ]
+            # [ inline ( always ) ]
+            pub fn tr9(&mut self) -> _Tr9W {
+                _Tr9W { w: self }
+            }
+            # [ doc = "Bit 10 - Rising trigger event configuration of line 10" ]
+            # [ inline ( always ) ]
+            pub fn tr10(&mut self) -> _Tr10W {
+                _Tr10W { w: self }
+            }
+            # [ doc = "Bit 11 - Rising trigger event configuration of line 11" ]
+            # [ inline ( always ) ]
+            pub fn tr11(&mut self) -> _Tr11W {
+                _Tr11W { w: self }
+            }
+            # [ doc = "Bit 12 - Rising trigger event configuration of line 12" ]
+            # [ inline ( always ) ]
+            pub fn tr12(&mut self) -> _Tr12W {
+                _Tr12W { w: self }
+            }
+            # [ doc = "Bit 13 - Rising trigger event configuration of line 13" ]
+            # [ inline ( always ) ]
+            pub fn tr13(&mut self) -> _Tr13W {
+                _Tr13W { w: self }
+            }
+            # [ doc = "Bit 14 - Rising trigger event configuration of line 14" ]
+            # [ inline ( always ) ]
+            pub fn tr14(&mut self) -> _Tr14W {
+                _Tr14W { w: self }
+            }
+            # [ doc = "Bit 15 - Rising trigger event configuration of line 15" ]
+            # [ inline ( always ) ]
+            pub fn tr15(&mut self) -> _Tr15W {
+                _Tr15W { w: self }
+            }
+            # [ doc = "Bit 16 - Rising trigger event configuration of line 16" ]
+            # [ inline ( always ) ]
+            pub fn tr16(&mut self) -> _Tr16W {
+                _Tr16W { w: self }
+            }
+            # [ doc = "Bit 17 - Rising trigger event configuration of line 17" ]
+            # [ inline ( always ) ]
+            pub fn tr17(&mut self) -> _Tr17W {
+                _Tr17W { w: self }
+            }
+            # [ doc = "Bit 18 - Rising trigger event configuration of line 18" ]
+            # [ inline ( always ) ]
+            pub fn tr18(&mut self) -> _Tr18W {
+                _Tr18W { w: self }
+            }
+            # [ doc = "Bit 19 - Rising trigger event configuration of line 19" ]
+            # [ inline ( always ) ]
+            pub fn tr19(&mut self) -> _Tr19W {
+                _Tr19W { w: self }
+            }
+            # [ doc = "Bit 20 - Rising trigger event configuration of line 20" ]
+            # [ inline ( always ) ]
+            pub fn tr20(&mut self) -> _Tr20W {
+                _Tr20W { w: self }
+            }
+            # [ doc = "Bit 21 - Rising trigger event configuration of line 21" ]
+            # [ inline ( always ) ]
+            pub fn tr21(&mut self) -> _Tr21W {
+                _Tr21W { w: self }
+            }
+            # [ doc = "Bit 22 - Rising trigger event configuration of line 22" ]
+            # [ inline ( always ) ]
+            pub fn tr22(&mut self) -> _Tr22W {
+                _Tr22W { w: self }
+            }
+        }
+    }
+    # [ doc = "Falling Trigger selection register (EXTI_FTSR)" ]
+    pub struct Ftsr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Falling Trigger selection register (EXTI_FTSR)" ]
+    pub mod ftsr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Ftsr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr0R {
+            bits: u8,
+        }
+        impl Tr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr1R {
+            bits: u8,
+        }
+        impl Tr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr2R {
+            bits: u8,
+        }
+        impl Tr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr3R {
+            bits: u8,
+        }
+        impl Tr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr4R {
+            bits: u8,
+        }
+        impl Tr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr5R {
+            bits: u8,
+        }
+        impl Tr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr6R {
+            bits: u8,
+        }
+        impl Tr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr7R {
+            bits: u8,
+        }
+        impl Tr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr8R {
+            bits: u8,
+        }
+        impl Tr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr9R {
+            bits: u8,
+        }
+        impl Tr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr10R {
+            bits: u8,
+        }
+        impl Tr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr11R {
+            bits: u8,
+        }
+        impl Tr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr12R {
+            bits: u8,
+        }
+        impl Tr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr13R {
+            bits: u8,
+        }
+        impl Tr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr14R {
+            bits: u8,
+        }
+        impl Tr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr15R {
+            bits: u8,
+        }
+        impl Tr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr16R {
+            bits: u8,
+        }
+        impl Tr16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr17R {
+            bits: u8,
+        }
+        impl Tr17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr18R {
+            bits: u8,
+        }
+        impl Tr18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr19R {
+            bits: u8,
+        }
+        impl Tr19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr20R {
+            bits: u8,
+        }
+        impl Tr20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr21R {
+            bits: u8,
+        }
+        impl Tr21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tr22R {
+            bits: u8,
+        }
+        impl Tr22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tr22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tr22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Falling trigger event configuration of line 0" ]
+            # [ inline ( always ) ]
+            pub fn tr0(&self) -> Tr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr0R { bits }
+            }
+            # [ doc = "Bit 1 - Falling trigger event configuration of line 1" ]
+            # [ inline ( always ) ]
+            pub fn tr1(&self) -> Tr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr1R { bits }
+            }
+            # [ doc = "Bit 2 - Falling trigger event configuration of line 2" ]
+            # [ inline ( always ) ]
+            pub fn tr2(&self) -> Tr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr2R { bits }
+            }
+            # [ doc = "Bit 3 - Falling trigger event configuration of line 3" ]
+            # [ inline ( always ) ]
+            pub fn tr3(&self) -> Tr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr3R { bits }
+            }
+            # [ doc = "Bit 4 - Falling trigger event configuration of line 4" ]
+            # [ inline ( always ) ]
+            pub fn tr4(&self) -> Tr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr4R { bits }
+            }
+            # [ doc = "Bit 5 - Falling trigger event configuration of line 5" ]
+            # [ inline ( always ) ]
+            pub fn tr5(&self) -> Tr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr5R { bits }
+            }
+            # [ doc = "Bit 6 - Falling trigger event configuration of line 6" ]
+            # [ inline ( always ) ]
+            pub fn tr6(&self) -> Tr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr6R { bits }
+            }
+            # [ doc = "Bit 7 - Falling trigger event configuration of line 7" ]
+            # [ inline ( always ) ]
+            pub fn tr7(&self) -> Tr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr7R { bits }
+            }
+            # [ doc = "Bit 8 - Falling trigger event configuration of line 8" ]
+            # [ inline ( always ) ]
+            pub fn tr8(&self) -> Tr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr8R { bits }
+            }
+            # [ doc = "Bit 9 - Falling trigger event configuration of line 9" ]
+            # [ inline ( always ) ]
+            pub fn tr9(&self) -> Tr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr9R { bits }
+            }
+            # [ doc = "Bit 10 - Falling trigger event configuration of line 10" ]
+            # [ inline ( always ) ]
+            pub fn tr10(&self) -> Tr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr10R { bits }
+            }
+            # [ doc = "Bit 11 - Falling trigger event configuration of line 11" ]
+            # [ inline ( always ) ]
+            pub fn tr11(&self) -> Tr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr11R { bits }
+            }
+            # [ doc = "Bit 12 - Falling trigger event configuration of line 12" ]
+            # [ inline ( always ) ]
+            pub fn tr12(&self) -> Tr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr12R { bits }
+            }
+            # [ doc = "Bit 13 - Falling trigger event configuration of line 13" ]
+            # [ inline ( always ) ]
+            pub fn tr13(&self) -> Tr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr13R { bits }
+            }
+            # [ doc = "Bit 14 - Falling trigger event configuration of line 14" ]
+            # [ inline ( always ) ]
+            pub fn tr14(&self) -> Tr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr14R { bits }
+            }
+            # [ doc = "Bit 15 - Falling trigger event configuration of line 15" ]
+            # [ inline ( always ) ]
+            pub fn tr15(&self) -> Tr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr15R { bits }
+            }
+            # [ doc = "Bit 16 - Falling trigger event configuration of line 16" ]
+            # [ inline ( always ) ]
+            pub fn tr16(&self) -> Tr16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr16R { bits }
+            }
+            # [ doc = "Bit 17 - Falling trigger event configuration of line 17" ]
+            # [ inline ( always ) ]
+            pub fn tr17(&self) -> Tr17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr17R { bits }
+            }
+            # [ doc = "Bit 18 - Falling trigger event configuration of line 18" ]
+            # [ inline ( always ) ]
+            pub fn tr18(&self) -> Tr18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr18R { bits }
+            }
+            # [ doc = "Bit 19 - Falling trigger event configuration of line 19" ]
+            # [ inline ( always ) ]
+            pub fn tr19(&self) -> Tr19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr19R { bits }
+            }
+            # [ doc = "Bit 20 - Falling trigger event configuration of line 20" ]
+            # [ inline ( always ) ]
+            pub fn tr20(&self) -> Tr20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr20R { bits }
+            }
+            # [ doc = "Bit 21 - Falling trigger event configuration of line 21" ]
+            # [ inline ( always ) ]
+            pub fn tr21(&self) -> Tr21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr21R { bits }
+            }
+            # [ doc = "Bit 22 - Falling trigger event configuration of line 22" ]
+            # [ inline ( always ) ]
+            pub fn tr22(&self) -> Tr22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Tr22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Falling trigger event configuration of line 0" ]
+            # [ inline ( always ) ]
+            pub fn tr0(&mut self) -> _Tr0W {
+                _Tr0W { w: self }
+            }
+            # [ doc = "Bit 1 - Falling trigger event configuration of line 1" ]
+            # [ inline ( always ) ]
+            pub fn tr1(&mut self) -> _Tr1W {
+                _Tr1W { w: self }
+            }
+            # [ doc = "Bit 2 - Falling trigger event configuration of line 2" ]
+            # [ inline ( always ) ]
+            pub fn tr2(&mut self) -> _Tr2W {
+                _Tr2W { w: self }
+            }
+            # [ doc = "Bit 3 - Falling trigger event configuration of line 3" ]
+            # [ inline ( always ) ]
+            pub fn tr3(&mut self) -> _Tr3W {
+                _Tr3W { w: self }
+            }
+            # [ doc = "Bit 4 - Falling trigger event configuration of line 4" ]
+            # [ inline ( always ) ]
+            pub fn tr4(&mut self) -> _Tr4W {
+                _Tr4W { w: self }
+            }
+            # [ doc = "Bit 5 - Falling trigger event configuration of line 5" ]
+            # [ inline ( always ) ]
+            pub fn tr5(&mut self) -> _Tr5W {
+                _Tr5W { w: self }
+            }
+            # [ doc = "Bit 6 - Falling trigger event configuration of line 6" ]
+            # [ inline ( always ) ]
+            pub fn tr6(&mut self) -> _Tr6W {
+                _Tr6W { w: self }
+            }
+            # [ doc = "Bit 7 - Falling trigger event configuration of line 7" ]
+            # [ inline ( always ) ]
+            pub fn tr7(&mut self) -> _Tr7W {
+                _Tr7W { w: self }
+            }
+            # [ doc = "Bit 8 - Falling trigger event configuration of line 8" ]
+            # [ inline ( always ) ]
+            pub fn tr8(&mut self) -> _Tr8W {
+                _Tr8W { w: self }
+            }
+            # [ doc = "Bit 9 - Falling trigger event configuration of line 9" ]
+            # [ inline ( always ) ]
+            pub fn tr9(&mut self) -> _Tr9W {
+                _Tr9W { w: self }
+            }
+            # [ doc = "Bit 10 - Falling trigger event configuration of line 10" ]
+            # [ inline ( always ) ]
+            pub fn tr10(&mut self) -> _Tr10W {
+                _Tr10W { w: self }
+            }
+            # [ doc = "Bit 11 - Falling trigger event configuration of line 11" ]
+            # [ inline ( always ) ]
+            pub fn tr11(&mut self) -> _Tr11W {
+                _Tr11W { w: self }
+            }
+            # [ doc = "Bit 12 - Falling trigger event configuration of line 12" ]
+            # [ inline ( always ) ]
+            pub fn tr12(&mut self) -> _Tr12W {
+                _Tr12W { w: self }
+            }
+            # [ doc = "Bit 13 - Falling trigger event configuration of line 13" ]
+            # [ inline ( always ) ]
+            pub fn tr13(&mut self) -> _Tr13W {
+                _Tr13W { w: self }
+            }
+            # [ doc = "Bit 14 - Falling trigger event configuration of line 14" ]
+            # [ inline ( always ) ]
+            pub fn tr14(&mut self) -> _Tr14W {
+                _Tr14W { w: self }
+            }
+            # [ doc = "Bit 15 - Falling trigger event configuration of line 15" ]
+            # [ inline ( always ) ]
+            pub fn tr15(&mut self) -> _Tr15W {
+                _Tr15W { w: self }
+            }
+            # [ doc = "Bit 16 - Falling trigger event configuration of line 16" ]
+            # [ inline ( always ) ]
+            pub fn tr16(&mut self) -> _Tr16W {
+                _Tr16W { w: self }
+            }
+            # [ doc = "Bit 17 - Falling trigger event configuration of line 17" ]
+            # [ inline ( always ) ]
+            pub fn tr17(&mut self) -> _Tr17W {
+                _Tr17W { w: self }
+            }
+            # [ doc = "Bit 18 - Falling trigger event configuration of line 18" ]
+            # [ inline ( always ) ]
+            pub fn tr18(&mut self) -> _Tr18W {
+                _Tr18W { w: self }
+            }
+            # [ doc = "Bit 19 - Falling trigger event configuration of line 19" ]
+            # [ inline ( always ) ]
+            pub fn tr19(&mut self) -> _Tr19W {
+                _Tr19W { w: self }
+            }
+            # [ doc = "Bit 20 - Falling trigger event configuration of line 20" ]
+            # [ inline ( always ) ]
+            pub fn tr20(&mut self) -> _Tr20W {
+                _Tr20W { w: self }
+            }
+            # [ doc = "Bit 21 - Falling trigger event configuration of line 21" ]
+            # [ inline ( always ) ]
+            pub fn tr21(&mut self) -> _Tr21W {
+                _Tr21W { w: self }
+            }
+            # [ doc = "Bit 22 - Falling trigger event configuration of line 22" ]
+            # [ inline ( always ) ]
+            pub fn tr22(&mut self) -> _Tr22W {
+                _Tr22W { w: self }
+            }
+        }
+    }
+    # [ doc = "Software interrupt event register (EXTI_SWIER)" ]
+    pub struct Swier {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Software interrupt event register (EXTI_SWIER)" ]
+    pub mod swier {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Swier {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier0R {
+            bits: u8,
+        }
+        impl Swier0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier1R {
+            bits: u8,
+        }
+        impl Swier1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier2R {
+            bits: u8,
+        }
+        impl Swier2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier3R {
+            bits: u8,
+        }
+        impl Swier3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier4R {
+            bits: u8,
+        }
+        impl Swier4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier5R {
+            bits: u8,
+        }
+        impl Swier5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier6R {
+            bits: u8,
+        }
+        impl Swier6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier7R {
+            bits: u8,
+        }
+        impl Swier7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier8R {
+            bits: u8,
+        }
+        impl Swier8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier9R {
+            bits: u8,
+        }
+        impl Swier9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier10R {
+            bits: u8,
+        }
+        impl Swier10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier11R {
+            bits: u8,
+        }
+        impl Swier11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier12R {
+            bits: u8,
+        }
+        impl Swier12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier13R {
+            bits: u8,
+        }
+        impl Swier13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier14R {
+            bits: u8,
+        }
+        impl Swier14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier15R {
+            bits: u8,
+        }
+        impl Swier15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier16R {
+            bits: u8,
+        }
+        impl Swier16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier17R {
+            bits: u8,
+        }
+        impl Swier17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier18R {
+            bits: u8,
+        }
+        impl Swier18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier19R {
+            bits: u8,
+        }
+        impl Swier19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier20R {
+            bits: u8,
+        }
+        impl Swier20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier21R {
+            bits: u8,
+        }
+        impl Swier21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Swier22R {
+            bits: u8,
+        }
+        impl Swier22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Swier22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Swier22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Software Interrupt on line 0" ]
+            # [ inline ( always ) ]
+            pub fn swier0(&self) -> Swier0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier0R { bits }
+            }
+            # [ doc = "Bit 1 - Software Interrupt on line 1" ]
+            # [ inline ( always ) ]
+            pub fn swier1(&self) -> Swier1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier1R { bits }
+            }
+            # [ doc = "Bit 2 - Software Interrupt on line 2" ]
+            # [ inline ( always ) ]
+            pub fn swier2(&self) -> Swier2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier2R { bits }
+            }
+            # [ doc = "Bit 3 - Software Interrupt on line 3" ]
+            # [ inline ( always ) ]
+            pub fn swier3(&self) -> Swier3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier3R { bits }
+            }
+            # [ doc = "Bit 4 - Software Interrupt on line 4" ]
+            # [ inline ( always ) ]
+            pub fn swier4(&self) -> Swier4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier4R { bits }
+            }
+            # [ doc = "Bit 5 - Software Interrupt on line 5" ]
+            # [ inline ( always ) ]
+            pub fn swier5(&self) -> Swier5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier5R { bits }
+            }
+            # [ doc = "Bit 6 - Software Interrupt on line 6" ]
+            # [ inline ( always ) ]
+            pub fn swier6(&self) -> Swier6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier6R { bits }
+            }
+            # [ doc = "Bit 7 - Software Interrupt on line 7" ]
+            # [ inline ( always ) ]
+            pub fn swier7(&self) -> Swier7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier7R { bits }
+            }
+            # [ doc = "Bit 8 - Software Interrupt on line 8" ]
+            # [ inline ( always ) ]
+            pub fn swier8(&self) -> Swier8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier8R { bits }
+            }
+            # [ doc = "Bit 9 - Software Interrupt on line 9" ]
+            # [ inline ( always ) ]
+            pub fn swier9(&self) -> Swier9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier9R { bits }
+            }
+            # [ doc = "Bit 10 - Software Interrupt on line 10" ]
+            # [ inline ( always ) ]
+            pub fn swier10(&self) -> Swier10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier10R { bits }
+            }
+            # [ doc = "Bit 11 - Software Interrupt on line 11" ]
+            # [ inline ( always ) ]
+            pub fn swier11(&self) -> Swier11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier11R { bits }
+            }
+            # [ doc = "Bit 12 - Software Interrupt on line 12" ]
+            # [ inline ( always ) ]
+            pub fn swier12(&self) -> Swier12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier12R { bits }
+            }
+            # [ doc = "Bit 13 - Software Interrupt on line 13" ]
+            # [ inline ( always ) ]
+            pub fn swier13(&self) -> Swier13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier13R { bits }
+            }
+            # [ doc = "Bit 14 - Software Interrupt on line 14" ]
+            # [ inline ( always ) ]
+            pub fn swier14(&self) -> Swier14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier14R { bits }
+            }
+            # [ doc = "Bit 15 - Software Interrupt on line 15" ]
+            # [ inline ( always ) ]
+            pub fn swier15(&self) -> Swier15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier15R { bits }
+            }
+            # [ doc = "Bit 16 - Software Interrupt on line 16" ]
+            # [ inline ( always ) ]
+            pub fn swier16(&self) -> Swier16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier16R { bits }
+            }
+            # [ doc = "Bit 17 - Software Interrupt on line 17" ]
+            # [ inline ( always ) ]
+            pub fn swier17(&self) -> Swier17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier17R { bits }
+            }
+            # [ doc = "Bit 18 - Software Interrupt on line 18" ]
+            # [ inline ( always ) ]
+            pub fn swier18(&self) -> Swier18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier18R { bits }
+            }
+            # [ doc = "Bit 19 - Software Interrupt on line 19" ]
+            # [ inline ( always ) ]
+            pub fn swier19(&self) -> Swier19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier19R { bits }
+            }
+            # [ doc = "Bit 20 - Software Interrupt on line 20" ]
+            # [ inline ( always ) ]
+            pub fn swier20(&self) -> Swier20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier20R { bits }
+            }
+            # [ doc = "Bit 21 - Software Interrupt on line 21" ]
+            # [ inline ( always ) ]
+            pub fn swier21(&self) -> Swier21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier21R { bits }
+            }
+            # [ doc = "Bit 22 - Software Interrupt on line 22" ]
+            # [ inline ( always ) ]
+            pub fn swier22(&self) -> Swier22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Swier22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Software Interrupt on line 0" ]
+            # [ inline ( always ) ]
+            pub fn swier0(&mut self) -> _Swier0W {
+                _Swier0W { w: self }
+            }
+            # [ doc = "Bit 1 - Software Interrupt on line 1" ]
+            # [ inline ( always ) ]
+            pub fn swier1(&mut self) -> _Swier1W {
+                _Swier1W { w: self }
+            }
+            # [ doc = "Bit 2 - Software Interrupt on line 2" ]
+            # [ inline ( always ) ]
+            pub fn swier2(&mut self) -> _Swier2W {
+                _Swier2W { w: self }
+            }
+            # [ doc = "Bit 3 - Software Interrupt on line 3" ]
+            # [ inline ( always ) ]
+            pub fn swier3(&mut self) -> _Swier3W {
+                _Swier3W { w: self }
+            }
+            # [ doc = "Bit 4 - Software Interrupt on line 4" ]
+            # [ inline ( always ) ]
+            pub fn swier4(&mut self) -> _Swier4W {
+                _Swier4W { w: self }
+            }
+            # [ doc = "Bit 5 - Software Interrupt on line 5" ]
+            # [ inline ( always ) ]
+            pub fn swier5(&mut self) -> _Swier5W {
+                _Swier5W { w: self }
+            }
+            # [ doc = "Bit 6 - Software Interrupt on line 6" ]
+            # [ inline ( always ) ]
+            pub fn swier6(&mut self) -> _Swier6W {
+                _Swier6W { w: self }
+            }
+            # [ doc = "Bit 7 - Software Interrupt on line 7" ]
+            # [ inline ( always ) ]
+            pub fn swier7(&mut self) -> _Swier7W {
+                _Swier7W { w: self }
+            }
+            # [ doc = "Bit 8 - Software Interrupt on line 8" ]
+            # [ inline ( always ) ]
+            pub fn swier8(&mut self) -> _Swier8W {
+                _Swier8W { w: self }
+            }
+            # [ doc = "Bit 9 - Software Interrupt on line 9" ]
+            # [ inline ( always ) ]
+            pub fn swier9(&mut self) -> _Swier9W {
+                _Swier9W { w: self }
+            }
+            # [ doc = "Bit 10 - Software Interrupt on line 10" ]
+            # [ inline ( always ) ]
+            pub fn swier10(&mut self) -> _Swier10W {
+                _Swier10W { w: self }
+            }
+            # [ doc = "Bit 11 - Software Interrupt on line 11" ]
+            # [ inline ( always ) ]
+            pub fn swier11(&mut self) -> _Swier11W {
+                _Swier11W { w: self }
+            }
+            # [ doc = "Bit 12 - Software Interrupt on line 12" ]
+            # [ inline ( always ) ]
+            pub fn swier12(&mut self) -> _Swier12W {
+                _Swier12W { w: self }
+            }
+            # [ doc = "Bit 13 - Software Interrupt on line 13" ]
+            # [ inline ( always ) ]
+            pub fn swier13(&mut self) -> _Swier13W {
+                _Swier13W { w: self }
+            }
+            # [ doc = "Bit 14 - Software Interrupt on line 14" ]
+            # [ inline ( always ) ]
+            pub fn swier14(&mut self) -> _Swier14W {
+                _Swier14W { w: self }
+            }
+            # [ doc = "Bit 15 - Software Interrupt on line 15" ]
+            # [ inline ( always ) ]
+            pub fn swier15(&mut self) -> _Swier15W {
+                _Swier15W { w: self }
+            }
+            # [ doc = "Bit 16 - Software Interrupt on line 16" ]
+            # [ inline ( always ) ]
+            pub fn swier16(&mut self) -> _Swier16W {
+                _Swier16W { w: self }
+            }
+            # [ doc = "Bit 17 - Software Interrupt on line 17" ]
+            # [ inline ( always ) ]
+            pub fn swier17(&mut self) -> _Swier17W {
+                _Swier17W { w: self }
+            }
+            # [ doc = "Bit 18 - Software Interrupt on line 18" ]
+            # [ inline ( always ) ]
+            pub fn swier18(&mut self) -> _Swier18W {
+                _Swier18W { w: self }
+            }
+            # [ doc = "Bit 19 - Software Interrupt on line 19" ]
+            # [ inline ( always ) ]
+            pub fn swier19(&mut self) -> _Swier19W {
+                _Swier19W { w: self }
+            }
+            # [ doc = "Bit 20 - Software Interrupt on line 20" ]
+            # [ inline ( always ) ]
+            pub fn swier20(&mut self) -> _Swier20W {
+                _Swier20W { w: self }
+            }
+            # [ doc = "Bit 21 - Software Interrupt on line 21" ]
+            # [ inline ( always ) ]
+            pub fn swier21(&mut self) -> _Swier21W {
+                _Swier21W { w: self }
+            }
+            # [ doc = "Bit 22 - Software Interrupt on line 22" ]
+            # [ inline ( always ) ]
+            pub fn swier22(&mut self) -> _Swier22W {
+                _Swier22W { w: self }
+            }
+        }
+    }
+    # [ doc = "Pending register (EXTI_PR)" ]
+    pub struct Pr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Pending register (EXTI_PR)" ]
+    pub mod pr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::Pr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr0R {
+            bits: u8,
+        }
+        impl Pr0R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr1R {
+            bits: u8,
+        }
+        impl Pr1R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr2R {
+            bits: u8,
+        }
+        impl Pr2R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr3R {
+            bits: u8,
+        }
+        impl Pr3R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr4R {
+            bits: u8,
+        }
+        impl Pr4R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr5R {
+            bits: u8,
+        }
+        impl Pr5R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr6R {
+            bits: u8,
+        }
+        impl Pr6R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr7R {
+            bits: u8,
+        }
+        impl Pr7R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr8R {
+            bits: u8,
+        }
+        impl Pr8R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr9R {
+            bits: u8,
+        }
+        impl Pr9R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr10R {
+            bits: u8,
+        }
+        impl Pr10R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr11R {
+            bits: u8,
+        }
+        impl Pr11R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr12R {
+            bits: u8,
+        }
+        impl Pr12R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr13R {
+            bits: u8,
+        }
+        impl Pr13R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr14R {
+            bits: u8,
+        }
+        impl Pr14R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr15R {
+            bits: u8,
+        }
+        impl Pr15R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr16R {
+            bits: u8,
+        }
+        impl Pr16R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr17R {
+            bits: u8,
+        }
+        impl Pr17R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr18R {
+            bits: u8,
+        }
+        impl Pr18R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr19R {
+            bits: u8,
+        }
+        impl Pr19R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr20R {
+            bits: u8,
+        }
+        impl Pr20R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr21R {
+            bits: u8,
+        }
+        impl Pr21R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Pr22R {
+            bits: u8,
+        }
+        impl Pr22R {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr0W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr0W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr1W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr1W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr2W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr2W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr3W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr3W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr4W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr4W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr5W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr5W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr6W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr6W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr7W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr7W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr8W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr8W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr9W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr9W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr10W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr10W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr11W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr11W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr12W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr12W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr13W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr13W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr14W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr14W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr15W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr15W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr16W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr16W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr17W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr17W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr18W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr18W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr19W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr19W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr20W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr20W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr21W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr21W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Pr22W<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Pr22W<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Pending bit 0" ]
+            # [ inline ( always ) ]
+            pub fn pr0(&self) -> Pr0R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr0R { bits }
+            }
+            # [ doc = "Bit 1 - Pending bit 1" ]
+            # [ inline ( always ) ]
+            pub fn pr1(&self) -> Pr1R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr1R { bits }
+            }
+            # [ doc = "Bit 2 - Pending bit 2" ]
+            # [ inline ( always ) ]
+            pub fn pr2(&self) -> Pr2R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr2R { bits }
+            }
+            # [ doc = "Bit 3 - Pending bit 3" ]
+            # [ inline ( always ) ]
+            pub fn pr3(&self) -> Pr3R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr3R { bits }
+            }
+            # [ doc = "Bit 4 - Pending bit 4" ]
+            # [ inline ( always ) ]
+            pub fn pr4(&self) -> Pr4R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr4R { bits }
+            }
+            # [ doc = "Bit 5 - Pending bit 5" ]
+            # [ inline ( always ) ]
+            pub fn pr5(&self) -> Pr5R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr5R { bits }
+            }
+            # [ doc = "Bit 6 - Pending bit 6" ]
+            # [ inline ( always ) ]
+            pub fn pr6(&self) -> Pr6R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr6R { bits }
+            }
+            # [ doc = "Bit 7 - Pending bit 7" ]
+            # [ inline ( always ) ]
+            pub fn pr7(&self) -> Pr7R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr7R { bits }
+            }
+            # [ doc = "Bit 8 - Pending bit 8" ]
+            # [ inline ( always ) ]
+            pub fn pr8(&self) -> Pr8R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr8R { bits }
+            }
+            # [ doc = "Bit 9 - Pending bit 9" ]
+            # [ inline ( always ) ]
+            pub fn pr9(&self) -> Pr9R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr9R { bits }
+            }
+            # [ doc = "Bit 10 - Pending bit 10" ]
+            # [ inline ( always ) ]
+            pub fn pr10(&self) -> Pr10R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr10R { bits }
+            }
+            # [ doc = "Bit 11 - Pending bit 11" ]
+            # [ inline ( always ) ]
+            pub fn pr11(&self) -> Pr11R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr11R { bits }
+            }
+            # [ doc = "Bit 12 - Pending bit 12" ]
+            # [ inline ( always ) ]
+            pub fn pr12(&self) -> Pr12R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr12R { bits }
+            }
+            # [ doc = "Bit 13 - Pending bit 13" ]
+            # [ inline ( always ) ]
+            pub fn pr13(&self) -> Pr13R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr13R { bits }
+            }
+            # [ doc = "Bit 14 - Pending bit 14" ]
+            # [ inline ( always ) ]
+            pub fn pr14(&self) -> Pr14R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr14R { bits }
+            }
+            # [ doc = "Bit 15 - Pending bit 15" ]
+            # [ inline ( always ) ]
+            pub fn pr15(&self) -> Pr15R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr15R { bits }
+            }
+            # [ doc = "Bit 16 - Pending bit 16" ]
+            # [ inline ( always ) ]
+            pub fn pr16(&self) -> Pr16R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr16R { bits }
+            }
+            # [ doc = "Bit 17 - Pending bit 17" ]
+            # [ inline ( always ) ]
+            pub fn pr17(&self) -> Pr17R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr17R { bits }
+            }
+            # [ doc = "Bit 18 - Pending bit 18" ]
+            # [ inline ( always ) ]
+            pub fn pr18(&self) -> Pr18R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr18R { bits }
+            }
+            # [ doc = "Bit 19 - Pending bit 19" ]
+            # [ inline ( always ) ]
+            pub fn pr19(&self) -> Pr19R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr19R { bits }
+            }
+            # [ doc = "Bit 20 - Pending bit 20" ]
+            # [ inline ( always ) ]
+            pub fn pr20(&self) -> Pr20R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr20R { bits }
+            }
+            # [ doc = "Bit 21 - Pending bit 21" ]
+            # [ inline ( always ) ]
+            pub fn pr21(&self) -> Pr21R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr21R { bits }
+            }
+            # [ doc = "Bit 22 - Pending bit 22" ]
+            # [ inline ( always ) ]
+            pub fn pr22(&self) -> Pr22R {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Pr22R { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Pending bit 0" ]
+            # [ inline ( always ) ]
+            pub fn pr0(&mut self) -> _Pr0W {
+                _Pr0W { w: self }
+            }
+            # [ doc = "Bit 1 - Pending bit 1" ]
+            # [ inline ( always ) ]
+            pub fn pr1(&mut self) -> _Pr1W {
+                _Pr1W { w: self }
+            }
+            # [ doc = "Bit 2 - Pending bit 2" ]
+            # [ inline ( always ) ]
+            pub fn pr2(&mut self) -> _Pr2W {
+                _Pr2W { w: self }
+            }
+            # [ doc = "Bit 3 - Pending bit 3" ]
+            # [ inline ( always ) ]
+            pub fn pr3(&mut self) -> _Pr3W {
+                _Pr3W { w: self }
+            }
+            # [ doc = "Bit 4 - Pending bit 4" ]
+            # [ inline ( always ) ]
+            pub fn pr4(&mut self) -> _Pr4W {
+                _Pr4W { w: self }
+            }
+            # [ doc = "Bit 5 - Pending bit 5" ]
+            # [ inline ( always ) ]
+            pub fn pr5(&mut self) -> _Pr5W {
+                _Pr5W { w: self }
+            }
+            # [ doc = "Bit 6 - Pending bit 6" ]
+            # [ inline ( always ) ]
+            pub fn pr6(&mut self) -> _Pr6W {
+                _Pr6W { w: self }
+            }
+            # [ doc = "Bit 7 - Pending bit 7" ]
+            # [ inline ( always ) ]
+            pub fn pr7(&mut self) -> _Pr7W {
+                _Pr7W { w: self }
+            }
+            # [ doc = "Bit 8 - Pending bit 8" ]
+            # [ inline ( always ) ]
+            pub fn pr8(&mut self) -> _Pr8W {
+                _Pr8W { w: self }
+            }
+            # [ doc = "Bit 9 - Pending bit 9" ]
+            # [ inline ( always ) ]
+            pub fn pr9(&mut self) -> _Pr9W {
+                _Pr9W { w: self }
+            }
+            # [ doc = "Bit 10 - Pending bit 10" ]
+            # [ inline ( always ) ]
+            pub fn pr10(&mut self) -> _Pr10W {
+                _Pr10W { w: self }
+            }
+            # [ doc = "Bit 11 - Pending bit 11" ]
+            # [ inline ( always ) ]
+            pub fn pr11(&mut self) -> _Pr11W {
+                _Pr11W { w: self }
+            }
+            # [ doc = "Bit 12 - Pending bit 12" ]
+            # [ inline ( always ) ]
+            pub fn pr12(&mut self) -> _Pr12W {
+                _Pr12W { w: self }
+            }
+            # [ doc = "Bit 13 - Pending bit 13" ]
+            # [ inline ( always ) ]
+            pub fn pr13(&mut self) -> _Pr13W {
+                _Pr13W { w: self }
+            }
+            # [ doc = "Bit 14 - Pending bit 14" ]
+            # [ inline ( always ) ]
+            pub fn pr14(&mut self) -> _Pr14W {
+                _Pr14W { w: self }
+            }
+            # [ doc = "Bit 15 - Pending bit 15" ]
+            # [ inline ( always ) ]
+            pub fn pr15(&mut self) -> _Pr15W {
+                _Pr15W { w: self }
+            }
+            # [ doc = "Bit 16 - Pending bit 16" ]
+            # [ inline ( always ) ]
+            pub fn pr16(&mut self) -> _Pr16W {
+                _Pr16W { w: self }
+            }
+            # [ doc = "Bit 17 - Pending bit 17" ]
+            # [ inline ( always ) ]
+            pub fn pr17(&mut self) -> _Pr17W {
+                _Pr17W { w: self }
+            }
+            # [ doc = "Bit 18 - Pending bit 18" ]
+            # [ inline ( always ) ]
+            pub fn pr18(&mut self) -> _Pr18W {
+                _Pr18W { w: self }
+            }
+            # [ doc = "Bit 19 - Pending bit 19" ]
+            # [ inline ( always ) ]
+            pub fn pr19(&mut self) -> _Pr19W {
+                _Pr19W { w: self }
+            }
+            # [ doc = "Bit 20 - Pending bit 20" ]
+            # [ inline ( always ) ]
+            pub fn pr20(&mut self) -> _Pr20W {
+                _Pr20W { w: self }
+            }
+            # [ doc = "Bit 21 - Pending bit 21" ]
+            # [ inline ( always ) ]
+            pub fn pr21(&mut self) -> _Pr21W {
+                _Pr21W { w: self }
+            }
+            # [ doc = "Bit 22 - Pending bit 22" ]
+            # [ inline ( always ) ]
+            pub fn pr22(&mut self) -> _Pr22W {
+                _Pr22W { w: self }
+            }
+        }
+    }
+}
+# [ doc = "External interrupt/event controller" ]
+pub struct Exti {
+    register_block: exti::RegisterBlock,
+}
+impl Deref for Exti {
+    type Target = exti::RegisterBlock;
+    fn deref(&self) -> &exti::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub const OTG_HS_GLOBAL: Peripheral<OtgHsGlobal> =
+    unsafe { Peripheral::new(1074003968) };
+# [ doc = "USB on the go high speed" ]
+pub mod otg_hs_global {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_HS control and status register" ]
+        pub otg_hs_gotgctl: OtgHsGotgctl,
+        # [ doc = "0x04 - OTG_HS interrupt register" ]
+        pub otg_hs_gotgint: OtgHsGotgint,
+        # [ doc = "0x08 - OTG_HS AHB configuration register" ]
+        pub otg_hs_gahbcfg: OtgHsGahbcfg,
+        # [ doc = "0x0c - OTG_HS USB configuration register" ]
+        pub otg_hs_gusbcfg: OtgHsGusbcfg,
+        # [ doc = "0x10 - OTG_HS reset register" ]
+        pub otg_hs_grstctl: OtgHsGrstctl,
+        # [ doc = "0x14 - OTG_HS core interrupt register" ]
+        pub otg_hs_gintsts: OtgHsGintsts,
+        # [ doc = "0x18 - OTG_HS interrupt mask register" ]
+        pub otg_hs_gintmsk: OtgHsGintmsk,
+        # [ doc = "0x1c - OTG_HS Receive status debug read register (host mode)" ]
+        pub otg_hs_grxstsr_host: OtgHsGrxstsrHost,
+        # [ doc = "0x20 - OTG_HS status read and pop register (host mode)" ]
+        pub otg_hs_grxstsp_host: OtgHsGrxstspHost,
+        # [ doc = "0x24 - OTG_HS Receive FIFO size register" ]
+        pub otg_hs_grxfsiz: OtgHsGrxfsiz,
+        # [ doc = "0x28 - OTG_HS nonperiodic transmit FIFO size register (host mode)" ]
+        pub otg_hs_gnptxfsiz_host: OtgHsGnptxfsizHost,
+        # [ doc = "0x2c - OTG_HS nonperiodic transmit FIFO/queue status register" ]
+        pub otg_hs_gnptxsts: OtgHsGnptxsts,
+        _reserved0: [u8; 8usize],
+        # [ doc = "0x38 - OTG_HS general core configuration register" ]
+        pub otg_hs_gccfg: OtgHsGccfg,
+        # [ doc = "0x3c - OTG_HS core ID register" ]
+        pub otg_hs_cid: OtgHsCid,
+        _reserved1: [u8; 192usize],
+        # [ doc = "0x100 - OTG_HS Host periodic transmit FIFO size register" ]
+        pub otg_hs_hptxfsiz: OtgHsHptxfsiz,
+        # [ doc = "0x104 - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf1: OtgHsDieptxf1,
+        # [ doc = "0x108 - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf2: OtgHsDieptxf2,
+        _reserved2: [u8; 16usize],
+        # [ doc = "0x11c - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf3: OtgHsDieptxf3,
+        # [ doc = "0x120 - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf4: OtgHsDieptxf4,
+        # [ doc = "0x124 - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf5: OtgHsDieptxf5,
+        # [ doc = "0x128 - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf6: OtgHsDieptxf6,
+        # [ doc = "0x12c - OTG_HS device IN endpoint transmit FIFO size register" ]
+        pub otg_hs_dieptxf7: OtgHsDieptxf7,
+    }
+    # [ doc = "OTG_HS control and status register" ]
+    pub struct OtgHsGotgctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS control and status register" ]
+    pub mod otg_hs_gotgctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGotgctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqscsR {
+            bits: u8,
+        }
+        impl SrqscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqR {
+            bits: u8,
+        }
+        impl SrqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HngscsR {
+            bits: u8,
+        }
+        impl HngscsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnprqR {
+            bits: u8,
+        }
+        impl HnprqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HshnpenR {
+            bits: u8,
+        }
+        impl HshnpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DhnpenR {
+            bits: u8,
+        }
+        impl DhnpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidstsR {
+            bits: u8,
+        }
+        impl CidstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbctR {
+            bits: u8,
+        }
+        impl DbctR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AsvldR {
+            bits: u8,
+        }
+        impl AsvldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BsvldR {
+            bits: u8,
+        }
+        impl BsvldR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnprqW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnprqW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HshnpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HshnpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DhnpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DhnpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Session request success" ]
+            # [ inline ( always ) ]
+            pub fn srqscs(&self) -> SrqscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqscsR { bits }
+            }
+            # [ doc = "Bit 1 - Session request" ]
+            # [ inline ( always ) ]
+            pub fn srq(&self) -> SrqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqR { bits }
+            }
+            # [ doc = "Bit 8 - Host negotiation success" ]
+            # [ inline ( always ) ]
+            pub fn hngscs(&self) -> HngscsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HngscsR { bits }
+            }
+            # [ doc = "Bit 9 - HNP request" ]
+            # [ inline ( always ) ]
+            pub fn hnprq(&self) -> HnprqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnprqR { bits }
+            }
+            # [ doc = "Bit 10 - Host set HNP enable" ]
+            # [ inline ( always ) ]
+            pub fn hshnpen(&self) -> HshnpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HshnpenR { bits }
+            }
+            # [ doc = "Bit 11 - Device HNP enabled" ]
+            # [ inline ( always ) ]
+            pub fn dhnpen(&self) -> DhnpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DhnpenR { bits }
+            }
+            # [ doc = "Bit 16 - Connector ID status" ]
+            # [ inline ( always ) ]
+            pub fn cidsts(&self) -> CidstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidstsR { bits }
+            }
+            # [ doc = "Bit 17 - Long/short debounce time" ]
+            # [ inline ( always ) ]
+            pub fn dbct(&self) -> DbctR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbctR { bits }
+            }
+            # [ doc = "Bit 18 - A-session valid" ]
+            # [ inline ( always ) ]
+            pub fn asvld(&self) -> AsvldR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AsvldR { bits }
+            }
+            # [ doc = "Bit 19 - B-session valid" ]
+            # [ inline ( always ) ]
+            pub fn bsvld(&self) -> BsvldR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BsvldR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2048 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Session request" ]
+            # [ inline ( always ) ]
+            pub fn srq(&mut self) -> _SrqW {
+                _SrqW { w: self }
+            }
+            # [ doc = "Bit 9 - HNP request" ]
+            # [ inline ( always ) ]
+            pub fn hnprq(&mut self) -> _HnprqW {
+                _HnprqW { w: self }
+            }
+            # [ doc = "Bit 10 - Host set HNP enable" ]
+            # [ inline ( always ) ]
+            pub fn hshnpen(&mut self) -> _HshnpenW {
+                _HshnpenW { w: self }
+            }
+            # [ doc = "Bit 11 - Device HNP enabled" ]
+            # [ inline ( always ) ]
+            pub fn dhnpen(&mut self) -> _DhnpenW {
+                _DhnpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS interrupt register" ]
+    pub struct OtgHsGotgint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS interrupt register" ]
+    pub mod otg_hs_gotgint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGotgint {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SedetR {
+            bits: u8,
+        }
+        impl SedetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrsschgR {
+            bits: u8,
+        }
+        impl SrsschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnsschgR {
+            bits: u8,
+        }
+        impl HnsschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HngdetR {
+            bits: u8,
+        }
+        impl HngdetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AdtochgR {
+            bits: u8,
+        }
+        impl AdtochgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DbcdneR {
+            bits: u8,
+        }
+        impl DbcdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SedetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SedetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrsschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrsschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnsschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnsschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HngdetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HngdetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AdtochgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AdtochgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DbcdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DbcdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 2 - Session end detected" ]
+            # [ inline ( always ) ]
+            pub fn sedet(&self) -> SedetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SedetR { bits }
+            }
+            # [ doc = "Bit 8 - Session request success status change" ]
+            # [ inline ( always ) ]
+            pub fn srsschg(&self) -> SrsschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrsschgR { bits }
+            }
+            # [ doc = "Bit 9 - Host negotiation success status change" ]
+            # [ inline ( always ) ]
+            pub fn hnsschg(&self) -> HnsschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnsschgR { bits }
+            }
+            # [ doc = "Bit 17 - Host negotiation detected" ]
+            # [ inline ( always ) ]
+            pub fn hngdet(&self) -> HngdetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HngdetR { bits }
+            }
+            # [ doc = "Bit 18 - A-device timeout change" ]
+            # [ inline ( always ) ]
+            pub fn adtochg(&self) -> AdtochgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AdtochgR { bits }
+            }
+            # [ doc = "Bit 19 - Debounce done" ]
+            # [ inline ( always ) ]
+            pub fn dbcdne(&self) -> DbcdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DbcdneR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 2 - Session end detected" ]
+            # [ inline ( always ) ]
+            pub fn sedet(&mut self) -> _SedetW {
+                _SedetW { w: self }
+            }
+            # [ doc = "Bit 8 - Session request success status change" ]
+            # [ inline ( always ) ]
+            pub fn srsschg(&mut self) -> _SrsschgW {
+                _SrsschgW { w: self }
+            }
+            # [ doc = "Bit 9 - Host negotiation success status change" ]
+            # [ inline ( always ) ]
+            pub fn hnsschg(&mut self) -> _HnsschgW {
+                _HnsschgW { w: self }
+            }
+            # [ doc = "Bit 17 - Host negotiation detected" ]
+            # [ inline ( always ) ]
+            pub fn hngdet(&mut self) -> _HngdetW {
+                _HngdetW { w: self }
+            }
+            # [ doc = "Bit 18 - A-device timeout change" ]
+            # [ inline ( always ) ]
+            pub fn adtochg(&mut self) -> _AdtochgW {
+                _AdtochgW { w: self }
+            }
+            # [ doc = "Bit 19 - Debounce done" ]
+            # [ inline ( always ) ]
+            pub fn dbcdne(&mut self) -> _DbcdneW {
+                _DbcdneW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS AHB configuration register" ]
+    pub struct OtgHsGahbcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS AHB configuration register" ]
+    pub mod otg_hs_gahbcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGahbcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GintR {
+            bits: u8,
+        }
+        impl GintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HbstlenR {
+            bits: u8,
+        }
+        impl HbstlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaenR {
+            bits: u8,
+        }
+        impl DmaenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfelvlR {
+            bits: u8,
+        }
+        impl TxfelvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfelvlR {
+            bits: u8,
+        }
+        impl PtxfelvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HbstlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HbstlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfelvlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfelvlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfelvlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfelvlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Global interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn gint(&self) -> GintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GintR { bits }
+            }
+            # [ doc = "Bits 1:4 - Burst length/type" ]
+            # [ inline ( always ) ]
+            pub fn hbstlen(&self) -> HbstlenR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HbstlenR { bits }
+            }
+            # [ doc = "Bit 5 - DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&self) -> DmaenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmaenR { bits }
+            }
+            # [ doc = "Bit 7 - TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn txfelvl(&self) -> TxfelvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfelvlR { bits }
+            }
+            # [ doc = "Bit 8 - Periodic TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn ptxfelvl(&self) -> PtxfelvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfelvlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Global interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn gint(&mut self) -> _GintW {
+                _GintW { w: self }
+            }
+            # [ doc = "Bits 1:4 - Burst length/type" ]
+            # [ inline ( always ) ]
+            pub fn hbstlen(&mut self) -> _HbstlenW {
+                _HbstlenW { w: self }
+            }
+            # [ doc = "Bit 5 - DMA enable" ]
+            # [ inline ( always ) ]
+            pub fn dmaen(&mut self) -> _DmaenW {
+                _DmaenW { w: self }
+            }
+            # [ doc = "Bit 7 - TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn txfelvl(&mut self) -> _TxfelvlW {
+                _TxfelvlW { w: self }
+            }
+            # [ doc = "Bit 8 - Periodic TxFIFO empty level" ]
+            # [ inline ( always ) ]
+            pub fn ptxfelvl(&mut self) -> _PtxfelvlW {
+                _PtxfelvlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS USB configuration register" ]
+    pub struct OtgHsGusbcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS USB configuration register" ]
+    pub mod otg_hs_gusbcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGusbcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocalR {
+            bits: u8,
+        }
+        impl TocalR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrpcapR {
+            bits: u8,
+        }
+        impl SrpcapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HnpcapR {
+            bits: u8,
+        }
+        impl HnpcapR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TrdtR {
+            bits: u8,
+        }
+        impl TrdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PhylpcsR {
+            bits: u8,
+        }
+        impl PhylpcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpifslsR {
+            bits: u8,
+        }
+        impl UlpifslsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpiarR {
+            bits: u8,
+        }
+        impl UlpiarR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpicsmR {
+            bits: u8,
+        }
+        impl UlpicsmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpievbusdR {
+            bits: u8,
+        }
+        impl UlpievbusdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpievbusiR {
+            bits: u8,
+        }
+        impl UlpievbusiR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TsdpsR {
+            bits: u8,
+        }
+        impl TsdpsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcciR {
+            bits: u8,
+        }
+        impl PcciR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtciR {
+            bits: u8,
+        }
+        impl PtciR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UlpiipdR {
+            bits: u8,
+        }
+        impl UlpiipdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FhmodR {
+            bits: u8,
+        }
+        impl FhmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FdmodR {
+            bits: u8,
+        }
+        impl FdmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CtxpktR {
+            bits: u8,
+        }
+        impl CtxpktR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocalW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocalW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PhyselW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PhyselW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrpcapW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrpcapW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HnpcapW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HnpcapW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TrdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TrdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PhylpcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PhylpcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpifslsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpifslsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpiarW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpiarW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpicsmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpicsmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpievbusdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpievbusdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpievbusiW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpievbusiW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TsdpsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TsdpsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PcciW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PcciW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 23;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtciW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtciW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UlpiipdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UlpiipdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FhmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FhmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FdmodW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FdmodW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CtxpktW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CtxpktW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:2 - FS timeout calibration" ]
+            # [ inline ( always ) ]
+            pub fn tocal(&self) -> TocalR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocalR { bits }
+            }
+            # [ doc = "Bit 8 - SRP-capable" ]
+            # [ inline ( always ) ]
+            pub fn srpcap(&self) -> SrpcapR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrpcapR { bits }
+            }
+            # [ doc = "Bit 9 - HNP-capable" ]
+            # [ inline ( always ) ]
+            pub fn hnpcap(&self) -> HnpcapR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HnpcapR { bits }
+            }
+            # [ doc = "Bits 10:13 - USB turnaround time" ]
+            # [ inline ( always ) ]
+            pub fn trdt(&self) -> TrdtR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TrdtR { bits }
+            }
+            # [ doc = "Bit 15 - PHY Low-power clock select" ]
+            # [ inline ( always ) ]
+            pub fn phylpcs(&self) -> PhylpcsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PhylpcsR { bits }
+            }
+            # [ doc = "Bit 17 - ULPI FS/LS select" ]
+            # [ inline ( always ) ]
+            pub fn ulpifsls(&self) -> UlpifslsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpifslsR { bits }
+            }
+            # [ doc = "Bit 18 - ULPI Auto-resume" ]
+            # [ inline ( always ) ]
+            pub fn ulpiar(&self) -> UlpiarR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpiarR { bits }
+            }
+            # [ doc = "Bit 19 - ULPI Clock SuspendM" ]
+            # [ inline ( always ) ]
+            pub fn ulpicsm(&self) -> UlpicsmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpicsmR { bits }
+            }
+            # [ doc = "Bit 20 - ULPI External VBUS Drive" ]
+            # [ inline ( always ) ]
+            pub fn ulpievbusd(&self) -> UlpievbusdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpievbusdR { bits }
+            }
+            # [ doc = "Bit 21 - ULPI external VBUS indicator" ]
+            # [ inline ( always ) ]
+            pub fn ulpievbusi(&self) -> UlpievbusiR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpievbusiR { bits }
+            }
+            # [ doc = "Bit 22 - TermSel DLine pulsing selection" ]
+            # [ inline ( always ) ]
+            pub fn tsdps(&self) -> TsdpsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TsdpsR { bits }
+            }
+            # [ doc = "Bit 23 - Indicator complement" ]
+            # [ inline ( always ) ]
+            pub fn pcci(&self) -> PcciR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 23;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcciR { bits }
+            }
+            # [ doc = "Bit 24 - Indicator pass through" ]
+            # [ inline ( always ) ]
+            pub fn ptci(&self) -> PtciR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtciR { bits }
+            }
+            # [ doc = "Bit 25 - ULPI interface protect disable" ]
+            # [ inline ( always ) ]
+            pub fn ulpiipd(&self) -> UlpiipdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UlpiipdR { bits }
+            }
+            # [ doc = "Bit 29 - Forced host mode" ]
+            # [ inline ( always ) ]
+            pub fn fhmod(&self) -> FhmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FhmodR { bits }
+            }
+            # [ doc = "Bit 30 - Forced peripheral mode" ]
+            # [ inline ( always ) ]
+            pub fn fdmod(&self) -> FdmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FdmodR { bits }
+            }
+            # [ doc = "Bit 31 - Corrupt Tx packet" ]
+            # [ inline ( always ) ]
+            pub fn ctxpkt(&self) -> CtxpktR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CtxpktR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 2560 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:2 - FS timeout calibration" ]
+            # [ inline ( always ) ]
+            pub fn tocal(&mut self) -> _TocalW {
+                _TocalW { w: self }
+            }
+            # [ doc = "Bit 6 - USB 2.0 high-speed ULPI PHY or USB 1.1 full-speed serial transceiver select" ]
+            # [ inline ( always ) ]
+            pub fn physel(&mut self) -> _PhyselW {
+                _PhyselW { w: self }
+            }
+            # [ doc = "Bit 8 - SRP-capable" ]
+            # [ inline ( always ) ]
+            pub fn srpcap(&mut self) -> _SrpcapW {
+                _SrpcapW { w: self }
+            }
+            # [ doc = "Bit 9 - HNP-capable" ]
+            # [ inline ( always ) ]
+            pub fn hnpcap(&mut self) -> _HnpcapW {
+                _HnpcapW { w: self }
+            }
+            # [ doc = "Bits 10:13 - USB turnaround time" ]
+            # [ inline ( always ) ]
+            pub fn trdt(&mut self) -> _TrdtW {
+                _TrdtW { w: self }
+            }
+            # [ doc = "Bit 15 - PHY Low-power clock select" ]
+            # [ inline ( always ) ]
+            pub fn phylpcs(&mut self) -> _PhylpcsW {
+                _PhylpcsW { w: self }
+            }
+            # [ doc = "Bit 17 - ULPI FS/LS select" ]
+            # [ inline ( always ) ]
+            pub fn ulpifsls(&mut self) -> _UlpifslsW {
+                _UlpifslsW { w: self }
+            }
+            # [ doc = "Bit 18 - ULPI Auto-resume" ]
+            # [ inline ( always ) ]
+            pub fn ulpiar(&mut self) -> _UlpiarW {
+                _UlpiarW { w: self }
+            }
+            # [ doc = "Bit 19 - ULPI Clock SuspendM" ]
+            # [ inline ( always ) ]
+            pub fn ulpicsm(&mut self) -> _UlpicsmW {
+                _UlpicsmW { w: self }
+            }
+            # [ doc = "Bit 20 - ULPI External VBUS Drive" ]
+            # [ inline ( always ) ]
+            pub fn ulpievbusd(&mut self) -> _UlpievbusdW {
+                _UlpievbusdW { w: self }
+            }
+            # [ doc = "Bit 21 - ULPI external VBUS indicator" ]
+            # [ inline ( always ) ]
+            pub fn ulpievbusi(&mut self) -> _UlpievbusiW {
+                _UlpievbusiW { w: self }
+            }
+            # [ doc = "Bit 22 - TermSel DLine pulsing selection" ]
+            # [ inline ( always ) ]
+            pub fn tsdps(&mut self) -> _TsdpsW {
+                _TsdpsW { w: self }
+            }
+            # [ doc = "Bit 23 - Indicator complement" ]
+            # [ inline ( always ) ]
+            pub fn pcci(&mut self) -> _PcciW {
+                _PcciW { w: self }
+            }
+            # [ doc = "Bit 24 - Indicator pass through" ]
+            # [ inline ( always ) ]
+            pub fn ptci(&mut self) -> _PtciW {
+                _PtciW { w: self }
+            }
+            # [ doc = "Bit 25 - ULPI interface protect disable" ]
+            # [ inline ( always ) ]
+            pub fn ulpiipd(&mut self) -> _UlpiipdW {
+                _UlpiipdW { w: self }
+            }
+            # [ doc = "Bit 29 - Forced host mode" ]
+            # [ inline ( always ) ]
+            pub fn fhmod(&mut self) -> _FhmodW {
+                _FhmodW { w: self }
+            }
+            # [ doc = "Bit 30 - Forced peripheral mode" ]
+            # [ inline ( always ) ]
+            pub fn fdmod(&mut self) -> _FdmodW {
+                _FdmodW { w: self }
+            }
+            # [ doc = "Bit 31 - Corrupt Tx packet" ]
+            # [ inline ( always ) ]
+            pub fn ctxpkt(&mut self) -> _CtxpktW {
+                _CtxpktW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS reset register" ]
+    pub struct OtgHsGrstctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS reset register" ]
+    pub mod otg_hs_grstctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGrstctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CsrstR {
+            bits: u8,
+        }
+        impl CsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HsrstR {
+            bits: u8,
+        }
+        impl HsrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FcrstR {
+            bits: u8,
+        }
+        impl FcrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfflshR {
+            bits: u8,
+        }
+        impl RxfflshR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfflshR {
+            bits: u8,
+        }
+        impl TxfflshR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmareqR {
+            bits: u8,
+        }
+        impl DmareqR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhbidlR {
+            bits: u8,
+        }
+        impl AhbidlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HsrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HsrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FcrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FcrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfflshW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfflshW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfflshW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfflshW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 31;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Core soft reset" ]
+            # [ inline ( always ) ]
+            pub fn csrst(&self) -> CsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CsrstR { bits }
+            }
+            # [ doc = "Bit 1 - HCLK soft reset" ]
+            # [ inline ( always ) ]
+            pub fn hsrst(&self) -> HsrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HsrstR { bits }
+            }
+            # [ doc = "Bit 2 - Host frame counter reset" ]
+            # [ inline ( always ) ]
+            pub fn fcrst(&self) -> FcrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FcrstR { bits }
+            }
+            # [ doc = "Bit 4 - RxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn rxfflsh(&self) -> RxfflshR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxfflshR { bits }
+            }
+            # [ doc = "Bit 5 - TxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn txfflsh(&self) -> TxfflshR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfflshR { bits }
+            }
+            # [ doc = "Bits 6:10 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 31;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - DMA request signal" ]
+            # [ inline ( always ) ]
+            pub fn dmareq(&self) -> DmareqR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DmareqR { bits }
+            }
+            # [ doc = "Bit 31 - AHB master idle" ]
+            # [ inline ( always ) ]
+            pub fn ahbidl(&self) -> AhbidlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhbidlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 536870912 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Core soft reset" ]
+            # [ inline ( always ) ]
+            pub fn csrst(&mut self) -> _CsrstW {
+                _CsrstW { w: self }
+            }
+            # [ doc = "Bit 1 - HCLK soft reset" ]
+            # [ inline ( always ) ]
+            pub fn hsrst(&mut self) -> _HsrstW {
+                _HsrstW { w: self }
+            }
+            # [ doc = "Bit 2 - Host frame counter reset" ]
+            # [ inline ( always ) ]
+            pub fn fcrst(&mut self) -> _FcrstW {
+                _FcrstW { w: self }
+            }
+            # [ doc = "Bit 4 - RxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn rxfflsh(&mut self) -> _RxfflshW {
+                _RxfflshW { w: self }
+            }
+            # [ doc = "Bit 5 - TxFIFO flush" ]
+            # [ inline ( always ) ]
+            pub fn txfflsh(&mut self) -> _TxfflshW {
+                _TxfflshW { w: self }
+            }
+            # [ doc = "Bits 6:10 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS core interrupt register" ]
+    pub struct OtgHsGintsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS core interrupt register" ]
+    pub mod otg_hs_gintsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGintsts {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CmodR {
+            bits: u8,
+        }
+        impl CmodR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmisR {
+            bits: u8,
+        }
+        impl MmisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgintR {
+            bits: u8,
+        }
+        impl OtgintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofR {
+            bits: u8,
+        }
+        impl SofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxflvlR {
+            bits: u8,
+        }
+        impl RxflvlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfeR {
+            bits: u8,
+        }
+        impl NptxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinakeffR {
+            bits: u8,
+        }
+        impl GinakeffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BoutnakeffR {
+            bits: u8,
+        }
+        impl BoutnakeffR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EsuspR {
+            bits: u8,
+        }
+        impl EsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbsuspR {
+            bits: u8,
+        }
+        impl UsbsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbrstR {
+            bits: u8,
+        }
+        impl UsbrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumdneR {
+            bits: u8,
+        }
+        impl EnumdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IsoodrpR {
+            bits: u8,
+        }
+        impl IsoodrpR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopfR {
+            bits: u8,
+        }
+        impl EopfR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u8,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u8,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IisoixfrR {
+            bits: u8,
+        }
+        impl IisoixfrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PxfrIncompisooutR {
+            bits: u8,
+        }
+        impl PxfrIncompisooutR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DatafsuspR {
+            bits: u8,
+        }
+        impl DatafsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HprtintR {
+            bits: u8,
+        }
+        impl HprtintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HcintR {
+            bits: u8,
+        }
+        impl HcintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfeR {
+            bits: u8,
+        }
+        impl PtxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidschgR {
+            bits: u8,
+        }
+        impl CidschgR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscintR {
+            bits: u8,
+        }
+        impl DiscintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqintR {
+            bits: u8,
+        }
+        impl SrqintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WkuintR {
+            bits: u8,
+        }
+        impl WkuintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnumdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnumdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IsoodrpW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IsoodrpW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopfW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopfW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IisoixfrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IisoixfrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PxfrIncompisooutW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PxfrIncompisooutW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DatafsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DatafsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CidschgW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CidschgW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WkuintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WkuintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Current mode of operation" ]
+            # [ inline ( always ) ]
+            pub fn cmod(&self) -> CmodR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CmodR { bits }
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt" ]
+            # [ inline ( always ) ]
+            pub fn mmis(&self) -> MmisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmisR { bits }
+            }
+            # [ doc = "Bit 2 - OTG interrupt" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&self) -> OtgintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgintR { bits }
+            }
+            # [ doc = "Bit 3 - Start of frame" ]
+            # [ inline ( always ) ]
+            pub fn sof(&self) -> SofR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofR { bits }
+            }
+            # [ doc = "Bit 4 - RxFIFO nonempty" ]
+            # [ inline ( always ) ]
+            pub fn rxflvl(&self) -> RxflvlR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxflvlR { bits }
+            }
+            # [ doc = "Bit 5 - Nonperiodic TxFIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn nptxfe(&self) -> NptxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxfeR { bits }
+            }
+            # [ doc = "Bit 6 - Global IN nonperiodic NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn ginakeff(&self) -> GinakeffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinakeffR { bits }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn boutnakeff(&self) -> BoutnakeffR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BoutnakeffR { bits }
+            }
+            # [ doc = "Bit 10 - Early suspend" ]
+            # [ inline ( always ) ]
+            pub fn esusp(&self) -> EsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EsuspR { bits }
+            }
+            # [ doc = "Bit 11 - USB suspend" ]
+            # [ inline ( always ) ]
+            pub fn usbsusp(&self) -> UsbsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbsuspR { bits }
+            }
+            # [ doc = "Bit 12 - USB reset" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&self) -> UsbrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbrstR { bits }
+            }
+            # [ doc = "Bit 13 - Enumeration done" ]
+            # [ inline ( always ) ]
+            pub fn enumdne(&self) -> EnumdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumdneR { bits }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ]
+            # [ inline ( always ) ]
+            pub fn isoodrp(&self) -> IsoodrpR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IsoodrpR { bits }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt" ]
+            # [ inline ( always ) ]
+            pub fn eopf(&self) -> EopfR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopfR { bits }
+            }
+            # [ doc = "Bit 18 - IN endpoint interrupt" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bit 19 - OUT endpoint interrupt" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OepintR { bits }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfr(&self) -> IisoixfrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IisoixfrR { bits }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer" ]
+            # [ inline ( always ) ]
+            pub fn pxfr_incompisoout(&self) -> PxfrIncompisooutR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PxfrIncompisooutR { bits }
+            }
+            # [ doc = "Bit 22 - Data fetch suspended" ]
+            # [ inline ( always ) ]
+            pub fn datafsusp(&self) -> DatafsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DatafsuspR { bits }
+            }
+            # [ doc = "Bit 24 - Host port interrupt" ]
+            # [ inline ( always ) ]
+            pub fn hprtint(&self) -> HprtintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HprtintR { bits }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt" ]
+            # [ inline ( always ) ]
+            pub fn hcint(&self) -> HcintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HcintR { bits }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn ptxfe(&self) -> PtxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfeR { bits }
+            }
+            # [ doc = "Bit 28 - Connector ID status change" ]
+            # [ inline ( always ) ]
+            pub fn cidschg(&self) -> CidschgR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidschgR { bits }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn discint(&self) -> DiscintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscintR { bits }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn srqint(&self) -> SrqintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqintR { bits }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn wkuint(&self) -> WkuintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WkuintR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 67108896 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt" ]
+            # [ inline ( always ) ]
+            pub fn mmis(&mut self) -> _MmisW {
+                _MmisW { w: self }
+            }
+            # [ doc = "Bit 3 - Start of frame" ]
+            # [ inline ( always ) ]
+            pub fn sof(&mut self) -> _SofW {
+                _SofW { w: self }
+            }
+            # [ doc = "Bit 10 - Early suspend" ]
+            # [ inline ( always ) ]
+            pub fn esusp(&mut self) -> _EsuspW {
+                _EsuspW { w: self }
+            }
+            # [ doc = "Bit 11 - USB suspend" ]
+            # [ inline ( always ) ]
+            pub fn usbsusp(&mut self) -> _UsbsuspW {
+                _UsbsuspW { w: self }
+            }
+            # [ doc = "Bit 12 - USB reset" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&mut self) -> _UsbrstW {
+                _UsbrstW { w: self }
+            }
+            # [ doc = "Bit 13 - Enumeration done" ]
+            # [ inline ( always ) ]
+            pub fn enumdne(&mut self) -> _EnumdneW {
+                _EnumdneW { w: self }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt" ]
+            # [ inline ( always ) ]
+            pub fn isoodrp(&mut self) -> _IsoodrpW {
+                _IsoodrpW { w: self }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt" ]
+            # [ inline ( always ) ]
+            pub fn eopf(&mut self) -> _EopfW {
+                _EopfW { w: self }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfr(&mut self) -> _IisoixfrW {
+                _IisoixfrW { w: self }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer" ]
+            # [ inline ( always ) ]
+            pub fn pxfr_incompisoout(&mut self) -> _PxfrIncompisooutW {
+                _PxfrIncompisooutW { w: self }
+            }
+            # [ doc = "Bit 22 - Data fetch suspended" ]
+            # [ inline ( always ) ]
+            pub fn datafsusp(&mut self) -> _DatafsuspW {
+                _DatafsuspW { w: self }
+            }
+            # [ doc = "Bit 28 - Connector ID status change" ]
+            # [ inline ( always ) ]
+            pub fn cidschg(&mut self) -> _CidschgW {
+                _CidschgW { w: self }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn discint(&mut self) -> _DiscintW {
+                _DiscintW { w: self }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn srqint(&mut self) -> _SrqintW {
+                _SrqintW { w: self }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt" ]
+            # [ inline ( always ) ]
+            pub fn wkuint(&mut self) -> _WkuintW {
+                _WkuintW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS interrupt mask register" ]
+    pub struct OtgHsGintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS interrupt mask register" ]
+    pub mod otg_hs_gintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MmismR {
+            bits: u8,
+        }
+        impl MmismR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtgintR {
+            bits: u8,
+        }
+        impl OtgintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofmR {
+            bits: u8,
+        }
+        impl SofmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxflvlmR {
+            bits: u8,
+        }
+        impl RxflvlmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfemR {
+            bits: u8,
+        }
+        impl NptxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinakeffmR {
+            bits: u8,
+        }
+        impl GinakeffmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GonakeffmR {
+            bits: u8,
+        }
+        impl GonakeffmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EsuspmR {
+            bits: u8,
+        }
+        impl EsuspmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbsuspmR {
+            bits: u8,
+        }
+        impl UsbsuspmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbrstR {
+            bits: u8,
+        }
+        impl UsbrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumdnemR {
+            bits: u8,
+        }
+        impl EnumdnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IsoodrpmR {
+            bits: u8,
+        }
+        impl IsoodrpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EopfmR {
+            bits: u8,
+        }
+        impl EopfmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpmismR {
+            bits: u8,
+        }
+        impl EpmismR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u8,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u8,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IisoixfrmR {
+            bits: u8,
+        }
+        impl IisoixfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PxfrmIisooxfrmR {
+            bits: u8,
+        }
+        impl PxfrmIisooxfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FsuspmR {
+            bits: u8,
+        }
+        impl FsuspmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtimR {
+            bits: u8,
+        }
+        impl PrtimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HcimR {
+            bits: u8,
+        }
+        impl HcimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfemR {
+            bits: u8,
+        }
+        impl PtxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct CidschgmR {
+            bits: u8,
+        }
+        impl CidschgmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DiscintR {
+            bits: u8,
+        }
+        impl DiscintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SrqimR {
+            bits: u8,
+        }
+        impl SrqimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct WuimR {
+            bits: u8,
+        }
+        impl WuimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MmismW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MmismW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtgintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtgintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxflvlmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxflvlmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GinakeffmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GinakeffmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GonakeffmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GonakeffmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EsuspmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EsuspmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbsuspmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbsuspmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EnumdnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EnumdnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IsoodrpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IsoodrpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EopfmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EopfmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpmismW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpmismW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IepintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IepintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OepintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OepintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IisoixfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IisoixfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PxfrmIisooxfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PxfrmIisooxfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FsuspmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FsuspmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HcimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HcimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 25;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CidschgmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CidschgmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DiscintW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DiscintW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SrqimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SrqimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _WuimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _WuimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn mmism(&self) -> MmismR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MmismR { bits }
+            }
+            # [ doc = "Bit 2 - OTG interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&self) -> OtgintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtgintR { bits }
+            }
+            # [ doc = "Bit 3 - Start of frame mask" ]
+            # [ inline ( always ) ]
+            pub fn sofm(&self) -> SofmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofmR { bits }
+            }
+            # [ doc = "Bit 4 - Receive FIFO nonempty mask" ]
+            # [ inline ( always ) ]
+            pub fn rxflvlm(&self) -> RxflvlmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxflvlmR { bits }
+            }
+            # [ doc = "Bit 5 - Nonperiodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn nptxfem(&self) -> NptxfemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxfemR { bits }
+            }
+            # [ doc = "Bit 6 - Global nonperiodic IN NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn ginakeffm(&self) -> GinakeffmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinakeffmR { bits }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn gonakeffm(&self) -> GonakeffmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GonakeffmR { bits }
+            }
+            # [ doc = "Bit 10 - Early suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn esuspm(&self) -> EsuspmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EsuspmR { bits }
+            }
+            # [ doc = "Bit 11 - USB suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn usbsuspm(&self) -> UsbsuspmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbsuspmR { bits }
+            }
+            # [ doc = "Bit 12 - USB reset mask" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&self) -> UsbrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbrstR { bits }
+            }
+            # [ doc = "Bit 13 - Enumeration done mask" ]
+            # [ inline ( always ) ]
+            pub fn enumdnem(&self) -> EnumdnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumdnemR { bits }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn isoodrpm(&self) -> IsoodrpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IsoodrpmR { bits }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn eopfm(&self) -> EopfmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EopfmR { bits }
+            }
+            # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epmism(&self) -> EpmismR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpmismR { bits }
+            }
+            # [ doc = "Bit 18 - IN endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bit 19 - OUT endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OepintR { bits }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfrm(&self) -> IisoixfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IisoixfrmR { bits }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn pxfrm_iisooxfrm(&self) -> PxfrmIisooxfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PxfrmIisooxfrmR { bits }
+            }
+            # [ doc = "Bit 22 - Data fetch suspended mask" ]
+            # [ inline ( always ) ]
+            pub fn fsuspm(&self) -> FsuspmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FsuspmR { bits }
+            }
+            # [ doc = "Bit 24 - Host port interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn prtim(&self) -> PrtimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtimR { bits }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn hcim(&self) -> HcimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 25;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HcimR { bits }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ptxfem(&self) -> PtxfemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 26;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxfemR { bits }
+            }
+            # [ doc = "Bit 28 - Connector ID status change mask" ]
+            # [ inline ( always ) ]
+            pub fn cidschgm(&self) -> CidschgmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 28;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                CidschgmR { bits }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn discint(&self) -> DiscintR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DiscintR { bits }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn srqim(&self) -> SrqimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SrqimR { bits }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn wuim(&self) -> WuimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                WuimR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Mode mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn mmism(&mut self) -> _MmismW {
+                _MmismW { w: self }
+            }
+            # [ doc = "Bit 2 - OTG interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn otgint(&mut self) -> _OtgintW {
+                _OtgintW { w: self }
+            }
+            # [ doc = "Bit 3 - Start of frame mask" ]
+            # [ inline ( always ) ]
+            pub fn sofm(&mut self) -> _SofmW {
+                _SofmW { w: self }
+            }
+            # [ doc = "Bit 4 - Receive FIFO nonempty mask" ]
+            # [ inline ( always ) ]
+            pub fn rxflvlm(&mut self) -> _RxflvlmW {
+                _RxflvlmW { w: self }
+            }
+            # [ doc = "Bit 5 - Nonperiodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn nptxfem(&mut self) -> _NptxfemW {
+                _NptxfemW { w: self }
+            }
+            # [ doc = "Bit 6 - Global nonperiodic IN NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn ginakeffm(&mut self) -> _GinakeffmW {
+                _GinakeffmW { w: self }
+            }
+            # [ doc = "Bit 7 - Global OUT NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn gonakeffm(&mut self) -> _GonakeffmW {
+                _GonakeffmW { w: self }
+            }
+            # [ doc = "Bit 10 - Early suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn esuspm(&mut self) -> _EsuspmW {
+                _EsuspmW { w: self }
+            }
+            # [ doc = "Bit 11 - USB suspend mask" ]
+            # [ inline ( always ) ]
+            pub fn usbsuspm(&mut self) -> _UsbsuspmW {
+                _UsbsuspmW { w: self }
+            }
+            # [ doc = "Bit 12 - USB reset mask" ]
+            # [ inline ( always ) ]
+            pub fn usbrst(&mut self) -> _UsbrstW {
+                _UsbrstW { w: self }
+            }
+            # [ doc = "Bit 13 - Enumeration done mask" ]
+            # [ inline ( always ) ]
+            pub fn enumdnem(&mut self) -> _EnumdnemW {
+                _EnumdnemW { w: self }
+            }
+            # [ doc = "Bit 14 - Isochronous OUT packet dropped interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn isoodrpm(&mut self) -> _IsoodrpmW {
+                _IsoodrpmW { w: self }
+            }
+            # [ doc = "Bit 15 - End of periodic frame interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn eopfm(&mut self) -> _EopfmW {
+                _EopfmW { w: self }
+            }
+            # [ doc = "Bit 17 - Endpoint mismatch interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epmism(&mut self) -> _EpmismW {
+                _EpmismW { w: self }
+            }
+            # [ doc = "Bit 18 - IN endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&mut self) -> _IepintW {
+                _IepintW { w: self }
+            }
+            # [ doc = "Bit 19 - OUT endpoints interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&mut self) -> _OepintW {
+                _OepintW { w: self }
+            }
+            # [ doc = "Bit 20 - Incomplete isochronous IN transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn iisoixfrm(&mut self) -> _IisoixfrmW {
+                _IisoixfrmW { w: self }
+            }
+            # [ doc = "Bit 21 - Incomplete periodic transfer mask" ]
+            # [ inline ( always ) ]
+            pub fn pxfrm_iisooxfrm(&mut self) -> _PxfrmIisooxfrmW {
+                _PxfrmIisooxfrmW { w: self }
+            }
+            # [ doc = "Bit 22 - Data fetch suspended mask" ]
+            # [ inline ( always ) ]
+            pub fn fsuspm(&mut self) -> _FsuspmW {
+                _FsuspmW { w: self }
+            }
+            # [ doc = "Bit 25 - Host channels interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn hcim(&mut self) -> _HcimW {
+                _HcimW { w: self }
+            }
+            # [ doc = "Bit 26 - Periodic TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ptxfem(&mut self) -> _PtxfemW {
+                _PtxfemW { w: self }
+            }
+            # [ doc = "Bit 28 - Connector ID status change mask" ]
+            # [ inline ( always ) ]
+            pub fn cidschgm(&mut self) -> _CidschgmW {
+                _CidschgmW { w: self }
+            }
+            # [ doc = "Bit 29 - Disconnect detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn discint(&mut self) -> _DiscintW {
+                _DiscintW { w: self }
+            }
+            # [ doc = "Bit 30 - Session request/new session detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn srqim(&mut self) -> _SrqimW {
+                _SrqimW { w: self }
+            }
+            # [ doc = "Bit 31 - Resume/remote wakeup detected interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn wuim(&mut self) -> _WuimW {
+                _WuimW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Receive status debug read register (host mode)" ]
+    pub struct OtgHsGrxstsrHost {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Receive status debug read register (host mode)" ]
+    pub mod otg_hs_grxstsr_host {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsGrxstsrHost {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChnumR {
+            bits: u8,
+        }
+        impl ChnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Channel number" ]
+            # [ inline ( always ) ]
+            pub fn chnum(&self) -> ChnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS status read and pop register (host mode)" ]
+    pub struct OtgHsGrxstspHost {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS status read and pop register (host mode)" ]
+    pub mod otg_hs_grxstsp_host {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsGrxstspHost {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChnumR {
+            bits: u8,
+        }
+        impl ChnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Channel number" ]
+            # [ inline ( always ) ]
+            pub fn chnum(&self) -> ChnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Receive FIFO size register" ]
+    pub struct OtgHsGrxfsiz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Receive FIFO size register" ]
+    pub mod otg_hs_grxfsiz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGrxfsiz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxfdR {
+            bits: u16,
+        }
+        impl RxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - RxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn rxfd(&self) -> RxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - RxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn rxfd(&mut self) -> _RxfdW {
+                _RxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS nonperiodic transmit FIFO size register (host mode)" ]
+    pub struct OtgHsGnptxfsizHost {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS nonperiodic transmit FIFO size register (host mode)" ]
+    pub mod otg_hs_gnptxfsiz_host {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGnptxfsizHost {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfsaR {
+            bits: u16,
+        }
+        impl NptxfsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfdR {
+            bits: u16,
+        }
+        impl NptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Nonperiodic transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsa(&self) -> NptxfsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Nonperiodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn nptxfd(&self) -> NptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Nonperiodic transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsa(&mut self) -> _NptxfsaW {
+                _NptxfsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Nonperiodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn nptxfd(&mut self) -> _NptxfdW {
+                _NptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "Endpoint 0 transmit FIFO size (peripheral mode)" ]
+    pub struct OtgHsTx0fsizPeripheral {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Endpoint 0 transmit FIFO size (peripheral mode)" ]
+    pub mod otg_hs_tx0fsiz_peripheral {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsTx0fsizPeripheral {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tx0fsaR {
+            bits: u16,
+        }
+        impl Tx0fsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Tx0fdR {
+            bits: u16,
+        }
+        impl Tx0fdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tx0fsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tx0fsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Tx0fdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Tx0fdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn tx0fsa(&self) -> Tx0fsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Tx0fsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn tx0fd(&self) -> Tx0fdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                Tx0fdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 512 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Endpoint 0 transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn tx0fsa(&mut self) -> _Tx0fsaW {
+                _Tx0fsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Endpoint 0 TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn tx0fd(&mut self) -> _Tx0fdW {
+                _Tx0fdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS nonperiodic transmit FIFO/queue status register" ]
+    pub struct OtgHsGnptxsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS nonperiodic transmit FIFO/queue status register" ]
+    pub mod otg_hs_gnptxsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsGnptxsts {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxfsavR {
+            bits: u16,
+        }
+        impl NptxfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptqxsavR {
+            bits: u8,
+        }
+        impl NptqxsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NptxqtopR {
+            bits: u8,
+        }
+        impl NptxqtopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Nonperiodic TxFIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn nptxfsav(&self) -> NptxfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                NptxfsavR { bits }
+            }
+            # [ doc = "Bits 16:23 - Nonperiodic transmit request queue space available" ]
+            # [ inline ( always ) ]
+            pub fn nptqxsav(&self) -> NptqxsavR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptqxsavR { bits }
+            }
+            # [ doc = "Bits 24:30 - Top of the nonperiodic transmit request queue" ]
+            # [ inline ( always ) ]
+            pub fn nptxqtop(&self) -> NptxqtopR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NptxqtopR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS general core configuration register" ]
+    pub struct OtgHsGccfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS general core configuration register" ]
+    pub mod otg_hs_gccfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsGccfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PwrdwnR {
+            bits: u8,
+        }
+        impl PwrdwnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct I2cpadenR {
+            bits: u8,
+        }
+        impl I2cpadenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusasenR {
+            bits: u8,
+        }
+        impl VbusasenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusbsenR {
+            bits: u8,
+        }
+        impl VbusbsenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SofoutenR {
+            bits: u8,
+        }
+        impl SofoutenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NovbussensR {
+            bits: u8,
+        }
+        impl NovbussensR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PwrdwnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PwrdwnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _I2cpadenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _I2cpadenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusasenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusasenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusbsenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusbsenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SofoutenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SofoutenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NovbussensW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NovbussensW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 16 - Power down" ]
+            # [ inline ( always ) ]
+            pub fn pwrdwn(&self) -> PwrdwnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PwrdwnR { bits }
+            }
+            # [ doc = "Bit 17 - Enable I2C bus connection for the external I2C PHY interface" ]
+            # [ inline ( always ) ]
+            pub fn i2cpaden(&self) -> I2cpadenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                I2cpadenR { bits }
+            }
+            # [ doc = "Bit 18 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusasen(&self) -> VbusasenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VbusasenR { bits }
+            }
+            # [ doc = "Bit 19 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusbsen(&self) -> VbusbsenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                VbusbsenR { bits }
+            }
+            # [ doc = "Bit 20 - SOF output enable" ]
+            # [ inline ( always ) ]
+            pub fn sofouten(&self) -> SofoutenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SofoutenR { bits }
+            }
+            # [ doc = "Bit 21 - VBUS sensing disable option" ]
+            # [ inline ( always ) ]
+            pub fn novbussens(&self) -> NovbussensR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NovbussensR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 16 - Power down" ]
+            # [ inline ( always ) ]
+            pub fn pwrdwn(&mut self) -> _PwrdwnW {
+                _PwrdwnW { w: self }
+            }
+            # [ doc = "Bit 17 - Enable I2C bus connection for the external I2C PHY interface" ]
+            # [ inline ( always ) ]
+            pub fn i2cpaden(&mut self) -> _I2cpadenW {
+                _I2cpadenW { w: self }
+            }
+            # [ doc = "Bit 18 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusasen(&mut self) -> _VbusasenW {
+                _VbusasenW { w: self }
+            }
+            # [ doc = "Bit 19 - Enable the VBUS sensing device" ]
+            # [ inline ( always ) ]
+            pub fn vbusbsen(&mut self) -> _VbusbsenW {
+                _VbusbsenW { w: self }
+            }
+            # [ doc = "Bit 20 - SOF output enable" ]
+            # [ inline ( always ) ]
+            pub fn sofouten(&mut self) -> _SofoutenW {
+                _SofoutenW { w: self }
+            }
+            # [ doc = "Bit 21 - VBUS sensing disable option" ]
+            # [ inline ( always ) ]
+            pub fn novbussens(&mut self) -> _NovbussensW {
+                _NovbussensW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS core ID register" ]
+    pub struct OtgHsCid {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS core ID register" ]
+    pub mod otg_hs_cid {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsCid {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ProductIdR {
+            bits: u32,
+        }
+        impl ProductIdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ProductIdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ProductIdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - Product ID field" ]
+            # [ inline ( always ) ]
+            pub fn product_id(&self) -> ProductIdR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                ProductIdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 4608 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - Product ID field" ]
+            # [ inline ( always ) ]
+            pub fn product_id(&mut self) -> _ProductIdW {
+                _ProductIdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Host periodic transmit FIFO size register" ]
+    pub struct OtgHsHptxfsiz {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Host periodic transmit FIFO size register" ]
+    pub mod otg_hs_hptxfsiz {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHptxfsiz {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxsaR {
+            bits: u16,
+        }
+        impl PtxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfdR {
+            bits: u16,
+        }
+        impl PtxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ]
+            # [ inline ( always ) ]
+            pub fn ptxsa(&self) -> PtxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ptxfd(&self) -> PtxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555968 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Host periodic TxFIFO start address" ]
+            # [ inline ( always ) ]
+            pub fn ptxsa(&mut self) -> _PtxsaW {
+                _PtxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - Host periodic TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ptxfd(&mut self) -> _PtxfdW {
+                _PtxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub struct OtgHsDieptxf7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO size register" ]
+    pub mod otg_hs_dieptxf7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptxf7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxsaR {
+            bits: u16,
+        }
+        impl IneptxsaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfdR {
+            bits: u16,
+        }
+        impl IneptxfdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxsaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxsaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&self) -> IneptxsaR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxsaR { bits }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&self) -> IneptxfdR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 33555456 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN endpoint FIFOx transmit RAM start address" ]
+            # [ inline ( always ) ]
+            pub fn ineptxsa(&mut self) -> _IneptxsaW {
+                _IneptxsaW { w: self }
+            }
+            # [ doc = "Bits 16:31 - IN endpoint TxFIFO depth" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfd(&mut self) -> _IneptxfdW {
+                _IneptxfdW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Receive status debug read register (peripheral mode mode)" ]
+    pub struct OtgHsGrxstsrPeripheral {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Receive status debug read register (peripheral mode mode)" ]
+    pub mod otg_hs_grxstsr_peripheral {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsGrxstsrPeripheral {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmnumR {
+            bits: u8,
+        }
+        impl FrmnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+            # [ doc = "Bits 21:24 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frmnum(&self) -> FrmnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmnumR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS status read and pop register (peripheral mode)" ]
+    pub struct OtgHsGrxstspPeripheral {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS status read and pop register (peripheral mode)" ]
+    pub mod otg_hs_grxstsp_peripheral {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsGrxstspPeripheral {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BcntR {
+            bits: u16,
+        }
+        impl BcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktstsR {
+            bits: u8,
+        }
+        impl PktstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmnumR {
+            bits: u8,
+        }
+        impl FrmnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:3 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bits 4:14 - Byte count" ]
+            # [ inline ( always ) ]
+            pub fn bcnt(&self) -> BcntR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                BcntR { bits }
+            }
+            # [ doc = "Bits 15:16 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+            # [ doc = "Bits 17:20 - Packet status" ]
+            # [ inline ( always ) ]
+            pub fn pktsts(&self) -> PktstsR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktstsR { bits }
+            }
+            # [ doc = "Bits 21:24 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frmnum(&self) -> FrmnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmnumR { bits }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub struct OtgHsGlobal {
+    register_block: otg_hs_global::RegisterBlock,
+}
+impl Deref for OtgHsGlobal {
+    type Target = otg_hs_global::RegisterBlock;
+    fn deref(&self) -> &otg_hs_global::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub const OTG_HS_HOST: Peripheral<OtgHsHost> =
+    unsafe { Peripheral::new(1074004992) };
+# [ doc = "USB on the go high speed" ]
+pub mod otg_hs_host {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_HS host configuration register" ]
+        pub otg_hs_hcfg: OtgHsHcfg,
+        # [ doc = "0x04 - OTG_HS Host frame interval register" ]
+        pub otg_hs_hfir: OtgHsHfir,
+        # [ doc = "0x08 - OTG_HS host frame number/frame time remaining register" ]
+        pub otg_hs_hfnum: OtgHsHfnum,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x10 - OTG_HS_Host periodic transmit FIFO/queue status register" ]
+        pub otg_hs_hptxsts: OtgHsHptxsts,
+        # [ doc = "0x14 - OTG_HS Host all channels interrupt register" ]
+        pub otg_hs_haint: OtgHsHaint,
+        # [ doc = "0x18 - OTG_HS host all channels interrupt mask register" ]
+        pub otg_hs_haintmsk: OtgHsHaintmsk,
+        _reserved1: [u8; 36usize],
+        # [ doc = "0x40 - OTG_HS host port control and status register" ]
+        pub otg_hs_hprt: OtgHsHprt,
+        _reserved2: [u8; 188usize],
+        # [ doc = "0x100 - OTG_HS host channel-0 characteristics register" ]
+        pub otg_hs_hcchar0: OtgHsHcchar0,
+        # [ doc = "0x104 - OTG_HS host channel-0 split control register" ]
+        pub otg_hs_hcsplt0: OtgHsHcsplt0,
+        # [ doc = "0x108 - OTG_HS host channel-11 interrupt register" ]
+        pub otg_hs_hcint0: OtgHsHcint0,
+        # [ doc = "0x10c - OTG_HS host channel-11 interrupt mask register" ]
+        pub otg_hs_hcintmsk0: OtgHsHcintmsk0,
+        # [ doc = "0x110 - OTG_HS host channel-11 transfer size register" ]
+        pub otg_hs_hctsiz0: OtgHsHctsiz0,
+        # [ doc = "0x114 - OTG_HS host channel-0 DMA address register" ]
+        pub otg_hs_hcdma0: OtgHsHcdma0,
+        _reserved3: [u8; 8usize],
+        # [ doc = "0x120 - OTG_HS host channel-1 characteristics register" ]
+        pub otg_hs_hcchar1: OtgHsHcchar1,
+        # [ doc = "0x124 - OTG_HS host channel-1 split control register" ]
+        pub otg_hs_hcsplt1: OtgHsHcsplt1,
+        # [ doc = "0x128 - OTG_HS host channel-1 interrupt register" ]
+        pub otg_hs_hcint1: OtgHsHcint1,
+        # [ doc = "0x12c - OTG_HS host channel-1 interrupt mask register" ]
+        pub otg_hs_hcintmsk1: OtgHsHcintmsk1,
+        # [ doc = "0x130 - OTG_HS host channel-1 transfer size register" ]
+        pub otg_hs_hctsiz1: OtgHsHctsiz1,
+        # [ doc = "0x134 - OTG_HS host channel-1 DMA address register" ]
+        pub otg_hs_hcdma1: OtgHsHcdma1,
+        _reserved4: [u8; 8usize],
+        # [ doc = "0x140 - OTG_HS host channel-2 characteristics register" ]
+        pub otg_hs_hcchar2: OtgHsHcchar2,
+        # [ doc = "0x144 - OTG_HS host channel-2 split control register" ]
+        pub otg_hs_hcsplt2: OtgHsHcsplt2,
+        # [ doc = "0x148 - OTG_HS host channel-2 interrupt register" ]
+        pub otg_hs_hcint2: OtgHsHcint2,
+        # [ doc = "0x14c - OTG_HS host channel-2 interrupt mask register" ]
+        pub otg_hs_hcintmsk2: OtgHsHcintmsk2,
+        # [ doc = "0x150 - OTG_HS host channel-2 transfer size register" ]
+        pub otg_hs_hctsiz2: OtgHsHctsiz2,
+        # [ doc = "0x154 - OTG_HS host channel-2 DMA address register" ]
+        pub otg_hs_hcdma2: OtgHsHcdma2,
+        _reserved5: [u8; 8usize],
+        # [ doc = "0x160 - OTG_HS host channel-3 characteristics register" ]
+        pub otg_hs_hcchar3: OtgHsHcchar3,
+        # [ doc = "0x164 - OTG_HS host channel-3 split control register" ]
+        pub otg_hs_hcsplt3: OtgHsHcsplt3,
+        # [ doc = "0x168 - OTG_HS host channel-3 interrupt register" ]
+        pub otg_hs_hcint3: OtgHsHcint3,
+        # [ doc = "0x16c - OTG_HS host channel-3 interrupt mask register" ]
+        pub otg_hs_hcintmsk3: OtgHsHcintmsk3,
+        # [ doc = "0x170 - OTG_HS host channel-3 transfer size register" ]
+        pub otg_hs_hctsiz3: OtgHsHctsiz3,
+        # [ doc = "0x174 - OTG_HS host channel-3 DMA address register" ]
+        pub otg_hs_hcdma3: OtgHsHcdma3,
+        _reserved6: [u8; 8usize],
+        # [ doc = "0x180 - OTG_HS host channel-4 characteristics register" ]
+        pub otg_hs_hcchar4: OtgHsHcchar4,
+        # [ doc = "0x184 - OTG_HS host channel-4 split control register" ]
+        pub otg_hs_hcsplt4: OtgHsHcsplt4,
+        # [ doc = "0x188 - OTG_HS host channel-4 interrupt register" ]
+        pub otg_hs_hcint4: OtgHsHcint4,
+        # [ doc = "0x18c - OTG_HS host channel-4 interrupt mask register" ]
+        pub otg_hs_hcintmsk4: OtgHsHcintmsk4,
+        # [ doc = "0x190 - OTG_HS host channel-4 transfer size register" ]
+        pub otg_hs_hctsiz4: OtgHsHctsiz4,
+        # [ doc = "0x194 - OTG_HS host channel-4 DMA address register" ]
+        pub otg_hs_hcdma4: OtgHsHcdma4,
+        _reserved7: [u8; 8usize],
+        # [ doc = "0x1a0 - OTG_HS host channel-5 characteristics register" ]
+        pub otg_hs_hcchar5: OtgHsHcchar5,
+        # [ doc = "0x1a4 - OTG_HS host channel-5 split control register" ]
+        pub otg_hs_hcsplt5: OtgHsHcsplt5,
+        # [ doc = "0x1a8 - OTG_HS host channel-5 interrupt register" ]
+        pub otg_hs_hcint5: OtgHsHcint5,
+        # [ doc = "0x1ac - OTG_HS host channel-5 interrupt mask register" ]
+        pub otg_hs_hcintmsk5: OtgHsHcintmsk5,
+        # [ doc = "0x1b0 - OTG_HS host channel-5 transfer size register" ]
+        pub otg_hs_hctsiz5: OtgHsHctsiz5,
+        # [ doc = "0x1b4 - OTG_HS host channel-5 DMA address register" ]
+        pub otg_hs_hcdma5: OtgHsHcdma5,
+        _reserved8: [u8; 8usize],
+        # [ doc = "0x1c0 - OTG_HS host channel-6 characteristics register" ]
+        pub otg_hs_hcchar6: OtgHsHcchar6,
+        # [ doc = "0x1c4 - OTG_HS host channel-6 split control register" ]
+        pub otg_hs_hcsplt6: OtgHsHcsplt6,
+        # [ doc = "0x1c8 - OTG_HS host channel-6 interrupt register" ]
+        pub otg_hs_hcint6: OtgHsHcint6,
+        # [ doc = "0x1cc - OTG_HS host channel-6 interrupt mask register" ]
+        pub otg_hs_hcintmsk6: OtgHsHcintmsk6,
+        # [ doc = "0x1d0 - OTG_HS host channel-6 transfer size register" ]
+        pub otg_hs_hctsiz6: OtgHsHctsiz6,
+        # [ doc = "0x1d4 - OTG_HS host channel-6 DMA address register" ]
+        pub otg_hs_hcdma6: OtgHsHcdma6,
+        _reserved9: [u8; 8usize],
+        # [ doc = "0x1e0 - OTG_HS host channel-7 characteristics register" ]
+        pub otg_hs_hcchar7: OtgHsHcchar7,
+        # [ doc = "0x1e4 - OTG_HS host channel-7 split control register" ]
+        pub otg_hs_hcsplt7: OtgHsHcsplt7,
+        # [ doc = "0x1e8 - OTG_HS host channel-7 interrupt register" ]
+        pub otg_hs_hcint7: OtgHsHcint7,
+        # [ doc = "0x1ec - OTG_HS host channel-7 interrupt mask register" ]
+        pub otg_hs_hcintmsk7: OtgHsHcintmsk7,
+        # [ doc = "0x1f0 - OTG_HS host channel-7 transfer size register" ]
+        pub otg_hs_hctsiz7: OtgHsHctsiz7,
+        # [ doc = "0x1f4 - OTG_HS host channel-7 DMA address register" ]
+        pub otg_hs_hcdma7: OtgHsHcdma7,
+        _reserved10: [u8; 8usize],
+        # [ doc = "0x200 - OTG_HS host channel-8 characteristics register" ]
+        pub otg_hs_hcchar8: OtgHsHcchar8,
+        # [ doc = "0x204 - OTG_HS host channel-8 split control register" ]
+        pub otg_hs_hcsplt8: OtgHsHcsplt8,
+        # [ doc = "0x208 - OTG_HS host channel-8 interrupt register" ]
+        pub otg_hs_hcint8: OtgHsHcint8,
+        # [ doc = "0x20c - OTG_HS host channel-8 interrupt mask register" ]
+        pub otg_hs_hcintmsk8: OtgHsHcintmsk8,
+        # [ doc = "0x210 - OTG_HS host channel-8 transfer size register" ]
+        pub otg_hs_hctsiz8: OtgHsHctsiz8,
+        # [ doc = "0x214 - OTG_HS host channel-8 DMA address register" ]
+        pub otg_hs_hcdma8: OtgHsHcdma8,
+        _reserved11: [u8; 8usize],
+        # [ doc = "0x220 - OTG_HS host channel-9 characteristics register" ]
+        pub otg_hs_hcchar9: OtgHsHcchar9,
+        # [ doc = "0x224 - OTG_HS host channel-9 split control register" ]
+        pub otg_hs_hcsplt9: OtgHsHcsplt9,
+        # [ doc = "0x228 - OTG_HS host channel-9 interrupt register" ]
+        pub otg_hs_hcint9: OtgHsHcint9,
+        # [ doc = "0x22c - OTG_HS host channel-9 interrupt mask register" ]
+        pub otg_hs_hcintmsk9: OtgHsHcintmsk9,
+        # [ doc = "0x230 - OTG_HS host channel-9 transfer size register" ]
+        pub otg_hs_hctsiz9: OtgHsHctsiz9,
+        # [ doc = "0x234 - OTG_HS host channel-9 DMA address register" ]
+        pub otg_hs_hcdma9: OtgHsHcdma9,
+        _reserved12: [u8; 8usize],
+        # [ doc = "0x240 - OTG_HS host channel-10 characteristics register" ]
+        pub otg_hs_hcchar10: OtgHsHcchar10,
+        # [ doc = "0x244 - OTG_HS host channel-10 split control register" ]
+        pub otg_hs_hcsplt10: OtgHsHcsplt10,
+        # [ doc = "0x248 - OTG_HS host channel-10 interrupt register" ]
+        pub otg_hs_hcint10: OtgHsHcint10,
+        # [ doc = "0x24c - OTG_HS host channel-10 interrupt mask register" ]
+        pub otg_hs_hcintmsk10: OtgHsHcintmsk10,
+        # [ doc = "0x250 - OTG_HS host channel-10 transfer size register" ]
+        pub otg_hs_hctsiz10: OtgHsHctsiz10,
+        # [ doc = "0x254 - OTG_HS host channel-10 DMA address register" ]
+        pub otg_hs_hcdma10: OtgHsHcdma10,
+        _reserved13: [u8; 8usize],
+        # [ doc = "0x260 - OTG_HS host channel-11 characteristics register" ]
+        pub otg_hs_hcchar11: OtgHsHcchar11,
+        # [ doc = "0x264 - OTG_HS host channel-11 split control register" ]
+        pub otg_hs_hcsplt11: OtgHsHcsplt11,
+        # [ doc = "0x268 - OTG_HS host channel-11 interrupt register" ]
+        pub otg_hs_hcint11: OtgHsHcint11,
+        # [ doc = "0x26c - OTG_HS host channel-11 interrupt mask register" ]
+        pub otg_hs_hcintmsk11: OtgHsHcintmsk11,
+        # [ doc = "0x270 - OTG_HS host channel-11 transfer size register" ]
+        pub otg_hs_hctsiz11: OtgHsHctsiz11,
+        # [ doc = "0x274 - OTG_HS host channel-11 DMA address register" ]
+        pub otg_hs_hcdma11: OtgHsHcdma11,
+    }
+    # [ doc = "OTG_HS host configuration register" ]
+    pub struct OtgHsHcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host configuration register" ]
+    pub mod otg_hs_hcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FslspcsR {
+            bits: u8,
+        }
+        impl FslspcsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FslssR {
+            bits: u8,
+        }
+        impl FslssR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FslspcsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FslspcsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - FS/LS PHY clock select" ]
+            # [ inline ( always ) ]
+            pub fn fslspcs(&self) -> FslspcsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FslspcsR { bits }
+            }
+            # [ doc = "Bit 2 - FS- and LS-only support" ]
+            # [ inline ( always ) ]
+            pub fn fslss(&self) -> FslssR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FslssR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - FS/LS PHY clock select" ]
+            # [ inline ( always ) ]
+            pub fn fslspcs(&mut self) -> _FslspcsW {
+                _FslspcsW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Host frame interval register" ]
+    pub struct OtgHsHfir {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Host frame interval register" ]
+    pub mod otg_hs_hfir {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHfir {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrivlR {
+            bits: u16,
+        }
+        impl FrivlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrivlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrivlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Frame interval" ]
+            # [ inline ( always ) ]
+            pub fn frivl(&self) -> FrivlR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FrivlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 60000 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Frame interval" ]
+            # [ inline ( always ) ]
+            pub fn frivl(&mut self) -> _FrivlW {
+                _FrivlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host frame number/frame time remaining register" ]
+    pub struct OtgHsHfnum {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host frame number/frame time remaining register" ]
+    pub mod otg_hs_hfnum {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsHfnum {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrnumR {
+            bits: u16,
+        }
+        impl FrnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FtremR {
+            bits: u16,
+        }
+        impl FtremR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Frame number" ]
+            # [ inline ( always ) ]
+            pub fn frnum(&self) -> FrnumR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FrnumR { bits }
+            }
+            # [ doc = "Bits 16:31 - Frame time remaining" ]
+            # [ inline ( always ) ]
+            pub fn ftrem(&self) -> FtremR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FtremR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS_Host periodic transmit FIFO/queue status register" ]
+    pub struct OtgHsHptxsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS_Host periodic transmit FIFO/queue status register" ]
+    pub mod otg_hs_hptxsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHptxsts {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxfsavlR {
+            bits: u16,
+        }
+        impl PtxfsavlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxqsavR {
+            bits: u8,
+        }
+        impl PtxqsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtxqtopR {
+            bits: u8,
+        }
+        impl PtxqtopR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtxfsavlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtxfsavlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsavl(&self) -> PtxfsavlR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PtxfsavlR { bits }
+            }
+            # [ doc = "Bits 16:23 - Periodic transmit request queue space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxqsav(&self) -> PtxqsavR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxqsavR { bits }
+            }
+            # [ doc = "Bits 24:31 - Top of the periodic transmit request queue" ]
+            # [ inline ( always ) ]
+            pub fn ptxqtop(&self) -> PtxqtopR {
+                let bits = {
+                    const MASK: u8 = 255;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtxqtopR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 524544 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Periodic transmit data FIFO space available" ]
+            # [ inline ( always ) ]
+            pub fn ptxfsavl(&mut self) -> _PtxfsavlW {
+                _PtxfsavlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Host all channels interrupt register" ]
+    pub struct OtgHsHaint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Host all channels interrupt register" ]
+    pub mod otg_hs_haint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsHaint {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HaintR {
+            bits: u16,
+        }
+        impl HaintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Channel interrupts" ]
+            # [ inline ( always ) ]
+            pub fn haint(&self) -> HaintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HaintR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host all channels interrupt mask register" ]
+    pub struct OtgHsHaintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host all channels interrupt mask register" ]
+    pub mod otg_hs_haintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHaintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HaintmR {
+            bits: u16,
+        }
+        impl HaintmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HaintmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HaintmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Channel interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn haintm(&self) -> HaintmR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                HaintmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Channel interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn haintm(&mut self) -> _HaintmW {
+                _HaintmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host port control and status register" ]
+    pub struct OtgHsHprt {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host port control and status register" ]
+    pub mod otg_hs_hprt {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHprt {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcstsR {
+            bits: u8,
+        }
+        impl PcstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PcdetR {
+            bits: u8,
+        }
+        impl PcdetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PenaR {
+            bits: u8,
+        }
+        impl PenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PenchngR {
+            bits: u8,
+        }
+        impl PenchngR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PocaR {
+            bits: u8,
+        }
+        impl PocaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PocchngR {
+            bits: u8,
+        }
+        impl PocchngR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PresR {
+            bits: u8,
+        }
+        impl PresR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PsuspR {
+            bits: u8,
+        }
+        impl PsuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrstR {
+            bits: u8,
+        }
+        impl PrstR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PlstsR {
+            bits: u8,
+        }
+        impl PlstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PpwrR {
+            bits: u8,
+        }
+        impl PpwrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PtctlR {
+            bits: u8,
+        }
+        impl PtctlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PspdR {
+            bits: u8,
+        }
+        impl PspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PcdetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PcdetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PenchngW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PenchngW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PocchngW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PocchngW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PresW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PresW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PsuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PsuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrstW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrstW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PpwrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PpwrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PtctlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PtctlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Port connect status" ]
+            # [ inline ( always ) ]
+            pub fn pcsts(&self) -> PcstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcstsR { bits }
+            }
+            # [ doc = "Bit 1 - Port connect detected" ]
+            # [ inline ( always ) ]
+            pub fn pcdet(&self) -> PcdetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PcdetR { bits }
+            }
+            # [ doc = "Bit 2 - Port enable" ]
+            # [ inline ( always ) ]
+            pub fn pena(&self) -> PenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PenaR { bits }
+            }
+            # [ doc = "Bit 3 - Port enable/disable change" ]
+            # [ inline ( always ) ]
+            pub fn penchng(&self) -> PenchngR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PenchngR { bits }
+            }
+            # [ doc = "Bit 4 - Port overcurrent active" ]
+            # [ inline ( always ) ]
+            pub fn poca(&self) -> PocaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PocaR { bits }
+            }
+            # [ doc = "Bit 5 - Port overcurrent change" ]
+            # [ inline ( always ) ]
+            pub fn pocchng(&self) -> PocchngR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PocchngR { bits }
+            }
+            # [ doc = "Bit 6 - Port resume" ]
+            # [ inline ( always ) ]
+            pub fn pres(&self) -> PresR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PresR { bits }
+            }
+            # [ doc = "Bit 7 - Port suspend" ]
+            # [ inline ( always ) ]
+            pub fn psusp(&self) -> PsuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PsuspR { bits }
+            }
+            # [ doc = "Bit 8 - Port reset" ]
+            # [ inline ( always ) ]
+            pub fn prst(&self) -> PrstR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrstR { bits }
+            }
+            # [ doc = "Bits 10:11 - Port line status" ]
+            # [ inline ( always ) ]
+            pub fn plsts(&self) -> PlstsR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PlstsR { bits }
+            }
+            # [ doc = "Bit 12 - Port power" ]
+            # [ inline ( always ) ]
+            pub fn ppwr(&self) -> PpwrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PpwrR { bits }
+            }
+            # [ doc = "Bits 13:16 - Port test control" ]
+            # [ inline ( always ) ]
+            pub fn ptctl(&self) -> PtctlR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PtctlR { bits }
+            }
+            # [ doc = "Bits 17:18 - Port speed" ]
+            # [ inline ( always ) ]
+            pub fn pspd(&self) -> PspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PspdR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - Port connect detected" ]
+            # [ inline ( always ) ]
+            pub fn pcdet(&mut self) -> _PcdetW {
+                _PcdetW { w: self }
+            }
+            # [ doc = "Bit 2 - Port enable" ]
+            # [ inline ( always ) ]
+            pub fn pena(&mut self) -> _PenaW {
+                _PenaW { w: self }
+            }
+            # [ doc = "Bit 3 - Port enable/disable change" ]
+            # [ inline ( always ) ]
+            pub fn penchng(&mut self) -> _PenchngW {
+                _PenchngW { w: self }
+            }
+            # [ doc = "Bit 5 - Port overcurrent change" ]
+            # [ inline ( always ) ]
+            pub fn pocchng(&mut self) -> _PocchngW {
+                _PocchngW { w: self }
+            }
+            # [ doc = "Bit 6 - Port resume" ]
+            # [ inline ( always ) ]
+            pub fn pres(&mut self) -> _PresW {
+                _PresW { w: self }
+            }
+            # [ doc = "Bit 7 - Port suspend" ]
+            # [ inline ( always ) ]
+            pub fn psusp(&mut self) -> _PsuspW {
+                _PsuspW { w: self }
+            }
+            # [ doc = "Bit 8 - Port reset" ]
+            # [ inline ( always ) ]
+            pub fn prst(&mut self) -> _PrstW {
+                _PrstW { w: self }
+            }
+            # [ doc = "Bit 12 - Port power" ]
+            # [ inline ( always ) ]
+            pub fn ppwr(&mut self) -> _PpwrW {
+                _PpwrW { w: self }
+            }
+            # [ doc = "Bits 13:16 - Port test control" ]
+            # [ inline ( always ) ]
+            pub fn ptctl(&mut self) -> _PtctlW {
+                _PtctlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-0 characteristics register" ]
+    pub struct OtgHsHcchar0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-0 characteristics register" ]
+    pub mod otg_hs_hcchar0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 characteristics register" ]
+    pub struct OtgHsHcchar1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 characteristics register" ]
+    pub mod otg_hs_hcchar1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 characteristics register" ]
+    pub struct OtgHsHcchar2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 characteristics register" ]
+    pub mod otg_hs_hcchar2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 characteristics register" ]
+    pub struct OtgHsHcchar3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 characteristics register" ]
+    pub mod otg_hs_hcchar3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 characteristics register" ]
+    pub struct OtgHsHcchar4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 characteristics register" ]
+    pub mod otg_hs_hcchar4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 characteristics register" ]
+    pub struct OtgHsHcchar5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 characteristics register" ]
+    pub mod otg_hs_hcchar5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 characteristics register" ]
+    pub struct OtgHsHcchar6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 characteristics register" ]
+    pub mod otg_hs_hcchar6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 characteristics register" ]
+    pub struct OtgHsHcchar7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 characteristics register" ]
+    pub mod otg_hs_hcchar7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 characteristics register" ]
+    pub struct OtgHsHcchar8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 characteristics register" ]
+    pub mod otg_hs_hcchar8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 characteristics register" ]
+    pub struct OtgHsHcchar9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 characteristics register" ]
+    pub mod otg_hs_hcchar9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 characteristics register" ]
+    pub struct OtgHsHcchar10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 characteristics register" ]
+    pub mod otg_hs_hcchar10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 characteristics register" ]
+    pub struct OtgHsHcchar11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 characteristics register" ]
+    pub mod otg_hs_hcchar11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcchar11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpnumR {
+            bits: u8,
+        }
+        impl EpnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdirR {
+            bits: u8,
+        }
+        impl EpdirR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct LsdevR {
+            bits: u8,
+        }
+        impl LsdevR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McR {
+            bits: u8,
+        }
+        impl McR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OddfrmR {
+            bits: u8,
+        }
+        impl OddfrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChdisR {
+            bits: u8,
+        }
+        impl ChdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChenaR {
+            bits: u8,
+        }
+        impl ChenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdirW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdirW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _LsdevW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _LsdevW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&self) -> EpnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpnumR { bits }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&self) -> EpdirR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdirR { bits }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&self) -> LsdevR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                LsdevR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&self) -> McR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McR { bits }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&self) -> OddfrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OddfrmR { bits }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&self) -> ChdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChdisR { bits }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&self) -> ChenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bits 11:14 - Endpoint number" ]
+            # [ inline ( always ) ]
+            pub fn epnum(&mut self) -> _EpnumW {
+                _EpnumW { w: self }
+            }
+            # [ doc = "Bit 15 - Endpoint direction" ]
+            # [ inline ( always ) ]
+            pub fn epdir(&mut self) -> _EpdirW {
+                _EpdirW { w: self }
+            }
+            # [ doc = "Bit 17 - Low-speed device" ]
+            # [ inline ( always ) ]
+            pub fn lsdev(&mut self) -> _LsdevW {
+                _LsdevW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bits 20:21 - Multi Count (MC) / Error Count (EC)" ]
+            # [ inline ( always ) ]
+            pub fn mc(&mut self) -> _McW {
+                _McW { w: self }
+            }
+            # [ doc = "Bits 22:28 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bit 29 - Odd frame" ]
+            # [ inline ( always ) ]
+            pub fn oddfrm(&mut self) -> _OddfrmW {
+                _OddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Channel disable" ]
+            # [ inline ( always ) ]
+            pub fn chdis(&mut self) -> _ChdisW {
+                _ChdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Channel enable" ]
+            # [ inline ( always ) ]
+            pub fn chena(&mut self) -> _ChenaW {
+                _ChenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-0 split control register" ]
+    pub struct OtgHsHcsplt0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-0 split control register" ]
+    pub mod otg_hs_hcsplt0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 split control register" ]
+    pub struct OtgHsHcsplt1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 split control register" ]
+    pub mod otg_hs_hcsplt1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 split control register" ]
+    pub struct OtgHsHcsplt2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 split control register" ]
+    pub mod otg_hs_hcsplt2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 split control register" ]
+    pub struct OtgHsHcsplt3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 split control register" ]
+    pub mod otg_hs_hcsplt3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 split control register" ]
+    pub struct OtgHsHcsplt4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 split control register" ]
+    pub mod otg_hs_hcsplt4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 split control register" ]
+    pub struct OtgHsHcsplt5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 split control register" ]
+    pub mod otg_hs_hcsplt5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 split control register" ]
+    pub struct OtgHsHcsplt6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 split control register" ]
+    pub mod otg_hs_hcsplt6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 split control register" ]
+    pub struct OtgHsHcsplt7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 split control register" ]
+    pub mod otg_hs_hcsplt7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 split control register" ]
+    pub struct OtgHsHcsplt8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 split control register" ]
+    pub mod otg_hs_hcsplt8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 split control register" ]
+    pub struct OtgHsHcsplt9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 split control register" ]
+    pub mod otg_hs_hcsplt9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 split control register" ]
+    pub struct OtgHsHcsplt10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 split control register" ]
+    pub mod otg_hs_hcsplt10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 split control register" ]
+    pub struct OtgHsHcsplt11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 split control register" ]
+    pub mod otg_hs_hcsplt11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcsplt11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PrtaddrR {
+            bits: u8,
+        }
+        impl PrtaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct HubaddrR {
+            bits: u8,
+        }
+        impl HubaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XactposR {
+            bits: u8,
+        }
+        impl XactposR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ComplspltR {
+            bits: u8,
+        }
+        impl ComplspltR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SplitenR {
+            bits: u8,
+        }
+        impl SplitenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PrtaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PrtaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _HubaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _HubaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XactposW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XactposW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ComplspltW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ComplspltW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SplitenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SplitenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&self) -> PrtaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PrtaddrR { bits }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&self) -> HubaddrR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                HubaddrR { bits }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&self) -> XactposR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XactposR { bits }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&self) -> ComplspltR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ComplspltR { bits }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&self) -> SplitenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SplitenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Port address" ]
+            # [ inline ( always ) ]
+            pub fn prtaddr(&mut self) -> _PrtaddrW {
+                _PrtaddrW { w: self }
+            }
+            # [ doc = "Bits 7:13 - Hub address" ]
+            # [ inline ( always ) ]
+            pub fn hubaddr(&mut self) -> _HubaddrW {
+                _HubaddrW { w: self }
+            }
+            # [ doc = "Bits 14:15 - XACTPOS" ]
+            # [ inline ( always ) ]
+            pub fn xactpos(&mut self) -> _XactposW {
+                _XactposW { w: self }
+            }
+            # [ doc = "Bit 16 - Do complete split" ]
+            # [ inline ( always ) ]
+            pub fn complsplt(&mut self) -> _ComplspltW {
+                _ComplspltW { w: self }
+            }
+            # [ doc = "Bit 31 - Split enable" ]
+            # [ inline ( always ) ]
+            pub fn spliten(&mut self) -> _SplitenW {
+                _SplitenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt register" ]
+    pub struct OtgHsHcint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt register" ]
+    pub mod otg_hs_hcint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 interrupt register" ]
+    pub struct OtgHsHcint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 interrupt register" ]
+    pub mod otg_hs_hcint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 interrupt register" ]
+    pub struct OtgHsHcint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 interrupt register" ]
+    pub mod otg_hs_hcint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 interrupt register" ]
+    pub struct OtgHsHcint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 interrupt register" ]
+    pub mod otg_hs_hcint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 interrupt register" ]
+    pub struct OtgHsHcint4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 interrupt register" ]
+    pub mod otg_hs_hcint4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 interrupt register" ]
+    pub struct OtgHsHcint5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 interrupt register" ]
+    pub mod otg_hs_hcint5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 interrupt register" ]
+    pub struct OtgHsHcint6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 interrupt register" ]
+    pub mod otg_hs_hcint6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 interrupt register" ]
+    pub struct OtgHsHcint7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 interrupt register" ]
+    pub mod otg_hs_hcint7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 interrupt register" ]
+    pub struct OtgHsHcint8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 interrupt register" ]
+    pub mod otg_hs_hcint8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 interrupt register" ]
+    pub struct OtgHsHcint9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 interrupt register" ]
+    pub mod otg_hs_hcint9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 interrupt register" ]
+    pub struct OtgHsHcint10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 interrupt register" ]
+    pub mod otg_hs_hcint10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt register" ]
+    pub struct OtgHsHcint11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt register" ]
+    pub mod otg_hs_hcint11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcint11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhR {
+            bits: u8,
+        }
+        impl ChhR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckR {
+            bits: u8,
+        }
+        impl AckR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrR {
+            bits: u8,
+        }
+        impl TxerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrR {
+            bits: u8,
+        }
+        impl BberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmorR {
+            bits: u8,
+        }
+        impl FrmorR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrR {
+            bits: u8,
+        }
+        impl DterrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmorW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmorW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&self) -> ChhR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&self) -> AckR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckR { bits }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&self) -> TxerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&self) -> BberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&self) -> FrmorR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmorR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&self) -> DterrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted" ]
+            # [ inline ( always ) ]
+            pub fn chh(&mut self) -> _ChhW {
+                _ChhW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt" ]
+            # [ inline ( always ) ]
+            pub fn ack(&mut self) -> _AckW {
+                _AckW { w: self }
+            }
+            # [ doc = "Bit 6 - Response received interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error" ]
+            # [ inline ( always ) ]
+            pub fn txerr(&mut self) -> _TxerrW {
+                _TxerrW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error" ]
+            # [ inline ( always ) ]
+            pub fn bberr(&mut self) -> _BberrW {
+                _BberrW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun" ]
+            # [ inline ( always ) ]
+            pub fn frmor(&mut self) -> _FrmorW {
+                _FrmorW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error" ]
+            # [ inline ( always ) ]
+            pub fn dterr(&mut self) -> _DterrW {
+                _DterrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt mask register" ]
+    pub struct OtgHsHcintmsk0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 interrupt mask register" ]
+    pub struct OtgHsHcintmsk1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 interrupt mask register" ]
+    pub struct OtgHsHcintmsk2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 interrupt mask register" ]
+    pub struct OtgHsHcintmsk3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 interrupt mask register" ]
+    pub struct OtgHsHcintmsk4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 interrupt mask register" ]
+    pub struct OtgHsHcintmsk5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 interrupt mask register" ]
+    pub struct OtgHsHcintmsk6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 interrupt mask register" ]
+    pub struct OtgHsHcintmsk7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 interrupt mask register" ]
+    pub struct OtgHsHcintmsk8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 interrupt mask register" ]
+    pub struct OtgHsHcintmsk9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 interrupt mask register" ]
+    pub struct OtgHsHcintmsk10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt mask register" ]
+    pub struct OtgHsHcintmsk11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 interrupt mask register" ]
+    pub mod otg_hs_hcintmsk11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcintmsk11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ChhmR {
+            bits: u8,
+        }
+        impl ChhmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AhberrR {
+            bits: u8,
+        }
+        impl AhberrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallmR {
+            bits: u8,
+        }
+        impl StallmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct AckmR {
+            bits: u8,
+        }
+        impl AckmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxerrmR {
+            bits: u8,
+        }
+        impl TxerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BberrmR {
+            bits: u8,
+        }
+        impl BberrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FrmormR {
+            bits: u8,
+        }
+        impl FrmormR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DterrmR {
+            bits: u8,
+        }
+        impl DterrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ChhmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ChhmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AhberrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AhberrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _AckmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _AckmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BberrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BberrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _FrmormW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _FrmormW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DterrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DterrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&self) -> ChhmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ChhmR { bits }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&self) -> AhberrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AhberrR { bits }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&self) -> StallmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallmR { bits }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&self) -> AckmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                AckmR { bits }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&self) -> TxerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxerrmR { bits }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&self) -> BberrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BberrmR { bits }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&self) -> FrmormR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                FrmormR { bits }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&self) -> DterrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 10;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DterrmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Channel halted mask" ]
+            # [ inline ( always ) ]
+            pub fn chhm(&mut self) -> _ChhmW {
+                _ChhmW { w: self }
+            }
+            # [ doc = "Bit 2 - AHB error" ]
+            # [ inline ( always ) ]
+            pub fn ahberr(&mut self) -> _AhberrW {
+                _AhberrW { w: self }
+            }
+            # [ doc = "Bit 3 - STALL response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn stallm(&mut self) -> _StallmW {
+                _StallmW { w: self }
+            }
+            # [ doc = "Bit 4 - NAK response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 5 - ACK response received/transmitted interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn ackm(&mut self) -> _AckmW {
+                _AckmW { w: self }
+            }
+            # [ doc = "Bit 6 - response received interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+            # [ doc = "Bit 7 - Transaction error mask" ]
+            # [ inline ( always ) ]
+            pub fn txerrm(&mut self) -> _TxerrmW {
+                _TxerrmW { w: self }
+            }
+            # [ doc = "Bit 8 - Babble error mask" ]
+            # [ inline ( always ) ]
+            pub fn bberrm(&mut self) -> _BberrmW {
+                _BberrmW { w: self }
+            }
+            # [ doc = "Bit 9 - Frame overrun mask" ]
+            # [ inline ( always ) ]
+            pub fn frmorm(&mut self) -> _FrmormW {
+                _FrmormW { w: self }
+            }
+            # [ doc = "Bit 10 - Data toggle error mask" ]
+            # [ inline ( always ) ]
+            pub fn dterrm(&mut self) -> _DterrmW {
+                _DterrmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 transfer size register" ]
+    pub struct OtgHsHctsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 transfer size register" ]
+    pub mod otg_hs_hctsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 transfer size register" ]
+    pub struct OtgHsHctsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 transfer size register" ]
+    pub mod otg_hs_hctsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 transfer size register" ]
+    pub struct OtgHsHctsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 transfer size register" ]
+    pub mod otg_hs_hctsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 transfer size register" ]
+    pub struct OtgHsHctsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 transfer size register" ]
+    pub mod otg_hs_hctsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 transfer size register" ]
+    pub struct OtgHsHctsiz4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 transfer size register" ]
+    pub mod otg_hs_hctsiz4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 transfer size register" ]
+    pub struct OtgHsHctsiz5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 transfer size register" ]
+    pub mod otg_hs_hctsiz5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 transfer size register" ]
+    pub struct OtgHsHctsiz6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 transfer size register" ]
+    pub mod otg_hs_hctsiz6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 transfer size register" ]
+    pub struct OtgHsHctsiz7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 transfer size register" ]
+    pub mod otg_hs_hctsiz7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 transfer size register" ]
+    pub struct OtgHsHctsiz8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 transfer size register" ]
+    pub mod otg_hs_hctsiz8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 transfer size register" ]
+    pub struct OtgHsHctsiz9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 transfer size register" ]
+    pub mod otg_hs_hctsiz9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 transfer size register" ]
+    pub struct OtgHsHctsiz10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 transfer size register" ]
+    pub mod otg_hs_hctsiz10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 transfer size register" ]
+    pub struct OtgHsHctsiz11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 transfer size register" ]
+    pub mod otg_hs_hctsiz11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHctsiz11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DpidR {
+            bits: u8,
+        }
+        impl DpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DpidW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DpidW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&self) -> DpidR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DpidR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Data PID" ]
+            # [ inline ( always ) ]
+            pub fn dpid(&mut self) -> _DpidW {
+                _DpidW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-0 DMA address register" ]
+    pub struct OtgHsHcdma0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-0 DMA address register" ]
+    pub mod otg_hs_hcdma0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-1 DMA address register" ]
+    pub struct OtgHsHcdma1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-1 DMA address register" ]
+    pub mod otg_hs_hcdma1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-2 DMA address register" ]
+    pub struct OtgHsHcdma2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-2 DMA address register" ]
+    pub mod otg_hs_hcdma2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-3 DMA address register" ]
+    pub struct OtgHsHcdma3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-3 DMA address register" ]
+    pub mod otg_hs_hcdma3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-4 DMA address register" ]
+    pub struct OtgHsHcdma4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-4 DMA address register" ]
+    pub mod otg_hs_hcdma4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-5 DMA address register" ]
+    pub struct OtgHsHcdma5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-5 DMA address register" ]
+    pub mod otg_hs_hcdma5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-6 DMA address register" ]
+    pub struct OtgHsHcdma6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-6 DMA address register" ]
+    pub mod otg_hs_hcdma6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-7 DMA address register" ]
+    pub struct OtgHsHcdma7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-7 DMA address register" ]
+    pub mod otg_hs_hcdma7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-8 DMA address register" ]
+    pub struct OtgHsHcdma8 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-8 DMA address register" ]
+    pub mod otg_hs_hcdma8 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma8 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-9 DMA address register" ]
+    pub struct OtgHsHcdma9 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-9 DMA address register" ]
+    pub mod otg_hs_hcdma9 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma9 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-10 DMA address register" ]
+    pub struct OtgHsHcdma10 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-10 DMA address register" ]
+    pub mod otg_hs_hcdma10 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma10 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS host channel-11 DMA address register" ]
+    pub struct OtgHsHcdma11 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS host channel-11 DMA address register" ]
+    pub mod otg_hs_hcdma11 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsHcdma11 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub struct OtgHsHost {
+    register_block: otg_hs_host::RegisterBlock,
+}
+impl Deref for OtgHsHost {
+    type Target = otg_hs_host::RegisterBlock;
+    fn deref(&self) -> &otg_hs_host::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub const OTG_HS_DEVICE: Peripheral<OtgHsDevice> =
+    unsafe { Peripheral::new(1074006016) };
+# [ doc = "USB on the go high speed" ]
+pub mod otg_hs_device {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - OTG_HS device configuration register" ]
+        pub otg_hs_dcfg: OtgHsDcfg,
+        # [ doc = "0x04 - OTG_HS device control register" ]
+        pub otg_hs_dctl: OtgHsDctl,
+        # [ doc = "0x08 - OTG_HS device status register" ]
+        pub otg_hs_dsts: OtgHsDsts,
+        _reserved0: [u8; 4usize],
+        # [ doc = "0x10 - OTG_HS device IN endpoint common interrupt mask register" ]
+        pub otg_hs_diepmsk: OtgHsDiepmsk,
+        # [ doc = "0x14 - OTG_HS device OUT endpoint common interrupt mask register" ]
+        pub otg_hs_doepmsk: OtgHsDoepmsk,
+        # [ doc = "0x18 - OTG_HS device all endpoints interrupt register" ]
+        pub otg_hs_daint: OtgHsDaint,
+        # [ doc = "0x1c - OTG_HS all endpoints interrupt mask register" ]
+        pub otg_hs_daintmsk: OtgHsDaintmsk,
+        _reserved1: [u8; 8usize],
+        # [ doc = "0x28 - OTG_HS device VBUS discharge time register" ]
+        pub otg_hs_dvbusdis: OtgHsDvbusdis,
+        # [ doc = "0x2c - OTG_HS device VBUS pulsing time register" ]
+        pub otg_hs_dvbuspulse: OtgHsDvbuspulse,
+        # [ doc = "0x30 - OTG_HS Device threshold control register" ]
+        pub otg_hs_dthrctl: OtgHsDthrctl,
+        # [ doc = "0x34 - OTG_HS device IN endpoint FIFO empty interrupt mask register" ]
+        pub otg_hs_diepempmsk: OtgHsDiepempmsk,
+        # [ doc = "0x38 - OTG_HS device each endpoint interrupt register" ]
+        pub otg_hs_deachint: OtgHsDeachint,
+        # [ doc = "0x3c - OTG_HS device each endpoint interrupt register mask" ]
+        pub otg_hs_deachintmsk: OtgHsDeachintmsk,
+        # [ doc = "0x40 - OTG_HS device each in endpoint-1 interrupt register" ]
+        pub otg_hs_diepeachmsk1: OtgHsDiepeachmsk1,
+        _reserved2: [u8; 60usize],
+        # [ doc = "0x80 - OTG_HS device each OUT endpoint-1 interrupt register" ]
+        pub otg_hs_doepeachmsk1: OtgHsDoepeachmsk1,
+        _reserved3: [u8; 124usize],
+        # [ doc = "0x100 - OTG device endpoint-0 control register" ]
+        pub otg_hs_diepctl0: OtgHsDiepctl0,
+        _reserved4: [u8; 4usize],
+        # [ doc = "0x108 - OTG device endpoint-0 interrupt register" ]
+        pub otg_hs_diepint0: OtgHsDiepint0,
+        _reserved5: [u8; 4usize],
+        # [ doc = "0x110 - OTG_HS device IN endpoint 0 transfer size register" ]
+        pub otg_hs_dieptsiz0: OtgHsDieptsiz0,
+        # [ doc = "0x114 - OTG_HS device endpoint-1 DMA address register" ]
+        pub otg_hs_diepdma1: OtgHsDiepdma1,
+        # [ doc = "0x118 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts0: OtgHsDtxfsts0,
+        _reserved6: [u8; 4usize],
+        # [ doc = "0x120 - OTG device endpoint-1 control register" ]
+        pub otg_hs_diepctl1: OtgHsDiepctl1,
+        _reserved7: [u8; 4usize],
+        # [ doc = "0x128 - OTG device endpoint-1 interrupt register" ]
+        pub otg_hs_diepint1: OtgHsDiepint1,
+        _reserved8: [u8; 4usize],
+        # [ doc = "0x130 - OTG_HS device endpoint transfer size register" ]
+        pub otg_hs_dieptsiz1: OtgHsDieptsiz1,
+        # [ doc = "0x134 - OTG_HS device endpoint-2 DMA address register" ]
+        pub otg_hs_diepdma2: OtgHsDiepdma2,
+        # [ doc = "0x138 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts1: OtgHsDtxfsts1,
+        _reserved9: [u8; 4usize],
+        # [ doc = "0x140 - OTG device endpoint-2 control register" ]
+        pub otg_hs_diepctl2: OtgHsDiepctl2,
+        _reserved10: [u8; 4usize],
+        # [ doc = "0x148 - OTG device endpoint-2 interrupt register" ]
+        pub otg_hs_diepint2: OtgHsDiepint2,
+        _reserved11: [u8; 4usize],
+        # [ doc = "0x150 - OTG_HS device endpoint transfer size register" ]
+        pub otg_hs_dieptsiz2: OtgHsDieptsiz2,
+        # [ doc = "0x154 - OTG_HS device endpoint-3 DMA address register" ]
+        pub otg_hs_diepdma3: OtgHsDiepdma3,
+        # [ doc = "0x158 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts2: OtgHsDtxfsts2,
+        _reserved12: [u8; 4usize],
+        # [ doc = "0x160 - OTG device endpoint-3 control register" ]
+        pub otg_hs_diepctl3: OtgHsDiepctl3,
+        _reserved13: [u8; 4usize],
+        # [ doc = "0x168 - OTG device endpoint-3 interrupt register" ]
+        pub otg_hs_diepint3: OtgHsDiepint3,
+        _reserved14: [u8; 4usize],
+        # [ doc = "0x170 - OTG_HS device endpoint transfer size register" ]
+        pub otg_hs_dieptsiz3: OtgHsDieptsiz3,
+        # [ doc = "0x174 - OTG_HS device endpoint-4 DMA address register" ]
+        pub otg_hs_diepdma4: OtgHsDiepdma4,
+        # [ doc = "0x178 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts3: OtgHsDtxfsts3,
+        _reserved15: [u8; 4usize],
+        # [ doc = "0x180 - OTG device endpoint-4 control register" ]
+        pub otg_hs_diepctl4: OtgHsDiepctl4,
+        _reserved16: [u8; 4usize],
+        # [ doc = "0x188 - OTG device endpoint-4 interrupt register" ]
+        pub otg_hs_diepint4: OtgHsDiepint4,
+        _reserved17: [u8; 4usize],
+        # [ doc = "0x190 - OTG_HS device endpoint transfer size register" ]
+        pub otg_hs_dieptsiz4: OtgHsDieptsiz4,
+        # [ doc = "0x194 - OTG_HS device endpoint-5 DMA address register" ]
+        pub otg_hs_diepdma5: OtgHsDiepdma5,
+        # [ doc = "0x198 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts4: OtgHsDtxfsts4,
+        _reserved18: [u8; 4usize],
+        # [ doc = "0x1a0 - OTG device endpoint-5 control register" ]
+        pub otg_hs_diepctl5: OtgHsDiepctl5,
+        _reserved19: [u8; 4usize],
+        # [ doc = "0x1a8 - OTG device endpoint-5 interrupt register" ]
+        pub otg_hs_diepint5: OtgHsDiepint5,
+        _reserved20: [u8; 4usize],
+        # [ doc = "0x1b0 - OTG_HS device endpoint transfer size register" ]
+        pub otg_hs_dieptsiz5: OtgHsDieptsiz5,
+        _reserved21: [u8; 4usize],
+        # [ doc = "0x1b8 - OTG_HS device IN endpoint transmit FIFO status register" ]
+        pub otg_hs_dtxfsts5: OtgHsDtxfsts5,
+        _reserved22: [u8; 4usize],
+        # [ doc = "0x1c0 - OTG device endpoint-6 control register" ]
+        pub otg_hs_diepctl6: OtgHsDiepctl6,
+        _reserved23: [u8; 4usize],
+        # [ doc = "0x1c8 - OTG device endpoint-6 interrupt register" ]
+        pub otg_hs_diepint6: OtgHsDiepint6,
+        _reserved24: [u8; 20usize],
+        # [ doc = "0x1e0 - OTG device endpoint-7 control register" ]
+        pub otg_hs_diepctl7: OtgHsDiepctl7,
+        _reserved25: [u8; 4usize],
+        # [ doc = "0x1e8 - OTG device endpoint-7 interrupt register" ]
+        pub otg_hs_diepint7: OtgHsDiepint7,
+        _reserved26: [u8; 276usize],
+        # [ doc = "0x300 - OTG_HS device control OUT endpoint 0 control register" ]
+        pub otg_hs_doepctl0: OtgHsDoepctl0,
+        _reserved27: [u8; 4usize],
+        # [ doc = "0x308 - OTG_HS device endpoint-0 interrupt register" ]
+        pub otg_hs_doepint0: OtgHsDoepint0,
+        _reserved28: [u8; 4usize],
+        # [ doc = "0x310 - OTG_HS device endpoint-1 transfer size register" ]
+        pub otg_hs_doeptsiz0: OtgHsDoeptsiz0,
+        _reserved29: [u8; 12usize],
+        # [ doc = "0x320 - OTG device endpoint-1 control register" ]
+        pub otg_hs_doepctl1: OtgHsDoepctl1,
+        _reserved30: [u8; 4usize],
+        # [ doc = "0x328 - OTG_HS device endpoint-1 interrupt register" ]
+        pub otg_hs_doepint1: OtgHsDoepint1,
+        _reserved31: [u8; 4usize],
+        # [ doc = "0x330 - OTG_HS device endpoint-2 transfer size register" ]
+        pub otg_hs_doeptsiz1: OtgHsDoeptsiz1,
+        _reserved32: [u8; 12usize],
+        # [ doc = "0x340 - OTG device endpoint-2 control register" ]
+        pub otg_hs_doepctl2: OtgHsDoepctl2,
+        _reserved33: [u8; 4usize],
+        # [ doc = "0x348 - OTG_HS device endpoint-2 interrupt register" ]
+        pub otg_hs_doepint2: OtgHsDoepint2,
+        _reserved34: [u8; 4usize],
+        # [ doc = "0x350 - OTG_HS device endpoint-3 transfer size register" ]
+        pub otg_hs_doeptsiz2: OtgHsDoeptsiz2,
+        _reserved35: [u8; 12usize],
+        # [ doc = "0x360 - OTG device endpoint-3 control register" ]
+        pub otg_hs_doepctl3: OtgHsDoepctl3,
+        _reserved36: [u8; 4usize],
+        # [ doc = "0x368 - OTG_HS device endpoint-3 interrupt register" ]
+        pub otg_hs_doepint3: OtgHsDoepint3,
+        _reserved37: [u8; 4usize],
+        # [ doc = "0x370 - OTG_HS device endpoint-4 transfer size register" ]
+        pub otg_hs_doeptsiz3: OtgHsDoeptsiz3,
+        _reserved38: [u8; 20usize],
+        # [ doc = "0x388 - OTG_HS device endpoint-4 interrupt register" ]
+        pub otg_hs_doepint4: OtgHsDoepint4,
+        _reserved39: [u8; 4usize],
+        # [ doc = "0x390 - OTG_HS device endpoint-5 transfer size register" ]
+        pub otg_hs_doeptsiz4: OtgHsDoeptsiz4,
+        _reserved40: [u8; 20usize],
+        # [ doc = "0x3a8 - OTG_HS device endpoint-5 interrupt register" ]
+        pub otg_hs_doepint5: OtgHsDoepint5,
+        _reserved41: [u8; 28usize],
+        # [ doc = "0x3c8 - OTG_HS device endpoint-6 interrupt register" ]
+        pub otg_hs_doepint6: OtgHsDoepint6,
+        _reserved42: [u8; 28usize],
+        # [ doc = "0x3e8 - OTG_HS device endpoint-7 interrupt register" ]
+        pub otg_hs_doepint7: OtgHsDoepint7,
+    }
+    # [ doc = "OTG_HS device configuration register" ]
+    pub struct OtgHsDcfg {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device configuration register" ]
+    pub mod otg_hs_dcfg {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDcfg {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DspdR {
+            bits: u8,
+        }
+        impl DspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NzlsohskR {
+            bits: u8,
+        }
+        impl NzlsohskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DadR {
+            bits: u8,
+        }
+        impl DadR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PfivlR {
+            bits: u8,
+        }
+        impl PfivlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PerschivlR {
+            bits: u8,
+        }
+        impl PerschivlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DspdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DspdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NzlsohskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NzlsohskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DadW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DadW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PfivlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PfivlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PerschivlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PerschivlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 24;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - Device speed" ]
+            # [ inline ( always ) ]
+            pub fn dspd(&self) -> DspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DspdR { bits }
+            }
+            # [ doc = "Bit 2 - Nonzero-length status OUT handshake" ]
+            # [ inline ( always ) ]
+            pub fn nzlsohsk(&self) -> NzlsohskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NzlsohskR { bits }
+            }
+            # [ doc = "Bits 4:10 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&self) -> DadR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                DadR { bits }
+            }
+            # [ doc = "Bits 11:12 - Periodic (micro)frame interval" ]
+            # [ inline ( always ) ]
+            pub fn pfivl(&self) -> PfivlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PfivlR { bits }
+            }
+            # [ doc = "Bits 24:25 - Periodic scheduling interval" ]
+            # [ inline ( always ) ]
+            pub fn perschivl(&self) -> PerschivlR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 24;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PerschivlR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 35651584 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:1 - Device speed" ]
+            # [ inline ( always ) ]
+            pub fn dspd(&mut self) -> _DspdW {
+                _DspdW { w: self }
+            }
+            # [ doc = "Bit 2 - Nonzero-length status OUT handshake" ]
+            # [ inline ( always ) ]
+            pub fn nzlsohsk(&mut self) -> _NzlsohskW {
+                _NzlsohskW { w: self }
+            }
+            # [ doc = "Bits 4:10 - Device address" ]
+            # [ inline ( always ) ]
+            pub fn dad(&mut self) -> _DadW {
+                _DadW { w: self }
+            }
+            # [ doc = "Bits 11:12 - Periodic (micro)frame interval" ]
+            # [ inline ( always ) ]
+            pub fn pfivl(&mut self) -> _PfivlW {
+                _PfivlW { w: self }
+            }
+            # [ doc = "Bits 24:25 - Periodic scheduling interval" ]
+            # [ inline ( always ) ]
+            pub fn perschivl(&mut self) -> _PerschivlW {
+                _PerschivlW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device control register" ]
+    pub struct OtgHsDctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device control register" ]
+    pub mod otg_hs_dctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RwusigR {
+            bits: u8,
+        }
+        impl RwusigR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SdisR {
+            bits: u8,
+        }
+        impl SdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GinstsR {
+            bits: u8,
+        }
+        impl GinstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GonstsR {
+            bits: u8,
+        }
+        impl GonstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TctlR {
+            bits: u8,
+        }
+        impl TctlR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PoprgdneR {
+            bits: u8,
+        }
+        impl PoprgdneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RwusigW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RwusigW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TctlW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TctlW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 7;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SginakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SginakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 7;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CginakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CginakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SgonakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SgonakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CgonakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CgonakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 10;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PoprgdneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PoprgdneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Remote wakeup signaling" ]
+            # [ inline ( always ) ]
+            pub fn rwusig(&self) -> RwusigR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RwusigR { bits }
+            }
+            # [ doc = "Bit 1 - Soft disconnect" ]
+            # [ inline ( always ) ]
+            pub fn sdis(&self) -> SdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SdisR { bits }
+            }
+            # [ doc = "Bit 2 - Global IN NAK status" ]
+            # [ inline ( always ) ]
+            pub fn ginsts(&self) -> GinstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GinstsR { bits }
+            }
+            # [ doc = "Bit 3 - Global OUT NAK status" ]
+            # [ inline ( always ) ]
+            pub fn gonsts(&self) -> GonstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GonstsR { bits }
+            }
+            # [ doc = "Bits 4:6 - Test control" ]
+            # [ inline ( always ) ]
+            pub fn tctl(&self) -> TctlR {
+                let bits = {
+                    const MASK: u8 = 7;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TctlR { bits }
+            }
+            # [ doc = "Bit 11 - Power-on programming done" ]
+            # [ inline ( always ) ]
+            pub fn poprgdne(&self) -> PoprgdneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PoprgdneR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Remote wakeup signaling" ]
+            # [ inline ( always ) ]
+            pub fn rwusig(&mut self) -> _RwusigW {
+                _RwusigW { w: self }
+            }
+            # [ doc = "Bit 1 - Soft disconnect" ]
+            # [ inline ( always ) ]
+            pub fn sdis(&mut self) -> _SdisW {
+                _SdisW { w: self }
+            }
+            # [ doc = "Bits 4:6 - Test control" ]
+            # [ inline ( always ) ]
+            pub fn tctl(&mut self) -> _TctlW {
+                _TctlW { w: self }
+            }
+            # [ doc = "Bit 7 - Set global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn sginak(&mut self) -> _SginakW {
+                _SginakW { w: self }
+            }
+            # [ doc = "Bit 8 - Clear global IN NAK" ]
+            # [ inline ( always ) ]
+            pub fn cginak(&mut self) -> _CginakW {
+                _CginakW { w: self }
+            }
+            # [ doc = "Bit 9 - Set global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn sgonak(&mut self) -> _SgonakW {
+                _SgonakW { w: self }
+            }
+            # [ doc = "Bit 10 - Clear global OUT NAK" ]
+            # [ inline ( always ) ]
+            pub fn cgonak(&mut self) -> _CgonakW {
+                _CgonakW { w: self }
+            }
+            # [ doc = "Bit 11 - Power-on programming done" ]
+            # [ inline ( always ) ]
+            pub fn poprgdne(&mut self) -> _PoprgdneW {
+                _PoprgdneW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device status register" ]
+    pub struct OtgHsDsts {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device status register" ]
+    pub mod otg_hs_dsts {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDsts {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SuspstsR {
+            bits: u8,
+        }
+        impl SuspstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EnumspdR {
+            bits: u8,
+        }
+        impl EnumspdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EerrR {
+            bits: u8,
+        }
+        impl EerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct FnsofR {
+            bits: u16,
+        }
+        impl FnsofR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Suspend status" ]
+            # [ inline ( always ) ]
+            pub fn suspsts(&self) -> SuspstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SuspstsR { bits }
+            }
+            # [ doc = "Bits 1:2 - Enumerated speed" ]
+            # [ inline ( always ) ]
+            pub fn enumspd(&self) -> EnumspdR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EnumspdR { bits }
+            }
+            # [ doc = "Bit 3 - Erratic error" ]
+            # [ inline ( always ) ]
+            pub fn eerr(&self) -> EerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EerrR { bits }
+            }
+            # [ doc = "Bits 8:21 - Frame number of the received SOF" ]
+            # [ inline ( always ) ]
+            pub fn fnsof(&self) -> FnsofR {
+                let bits = {
+                    const MASK: u16 = 16383;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                FnsofR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint common interrupt mask register" ]
+    pub struct OtgHsDiepmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint common interrupt mask register" ]
+    pub mod otg_hs_diepmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TomR {
+            bits: u8,
+        }
+        impl TomR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfemskR {
+            bits: u8,
+        }
+        impl IttxfemskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnmmR {
+            bits: u8,
+        }
+        impl InepnmmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnemR {
+            bits: u8,
+        }
+        impl InepnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfurmR {
+            bits: u8,
+        }
+        impl TxfurmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BimR {
+            bits: u8,
+        }
+        impl BimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TomW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TomW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfemskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfemskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnmmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnmmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfurmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfurmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&self) -> TomR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TomR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&self) -> IttxfemskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfemskR { bits }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&self) -> InepnmmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnmmR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&self) -> InepnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnemR { bits }
+            }
+            # [ doc = "Bit 8 - FIFO underrun mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&self) -> TxfurmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfurmR { bits }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&self) -> BimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BimR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&mut self) -> _TomW {
+                _TomW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&mut self) -> _IttxfemskW {
+                _IttxfemskW { w: self }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&mut self) -> _InepnmmW {
+                _InepnmmW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&mut self) -> _InepnemW {
+                _InepnemW { w: self }
+            }
+            # [ doc = "Bit 8 - FIFO underrun mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&mut self) -> _TxfurmW {
+                _TxfurmW { w: self }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&mut self) -> _BimW {
+                _BimW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device OUT endpoint common interrupt mask register" ]
+    pub struct OtgHsDoepmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device OUT endpoint common interrupt mask register" ]
+    pub mod otg_hs_doepmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupmR {
+            bits: u8,
+        }
+        impl StupmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdmR {
+            bits: u8,
+        }
+        impl OtepdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OpemR {
+            bits: u8,
+        }
+        impl OpemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BoimR {
+            bits: u8,
+        }
+        impl BoimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OpemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OpemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BoimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BoimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done mask" ]
+            # [ inline ( always ) ]
+            pub fn stupm(&self) -> StupmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupmR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ]
+            # [ inline ( always ) ]
+            pub fn otepdm(&self) -> OtepdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdmR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received mask" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 8 - OUT packet error mask" ]
+            # [ inline ( always ) ]
+            pub fn opem(&self) -> OpemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OpemR { bits }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn boim(&self) -> BoimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BoimR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done mask" ]
+            # [ inline ( always ) ]
+            pub fn stupm(&mut self) -> _StupmW {
+                _StupmW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled mask" ]
+            # [ inline ( always ) ]
+            pub fn otepdm(&mut self) -> _OtepdmW {
+                _OtepdmW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received mask" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 8 - OUT packet error mask" ]
+            # [ inline ( always ) ]
+            pub fn opem(&mut self) -> _OpemW {
+                _OpemW { w: self }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn boim(&mut self) -> _BoimW {
+                _BoimW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device all endpoints interrupt register" ]
+    pub struct OtgHsDaint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device all endpoints interrupt register" ]
+    pub mod otg_hs_daint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDaint {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepintR {
+            bits: u16,
+        }
+        impl IepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepintR {
+            bits: u16,
+        }
+        impl OepintR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn iepint(&self) -> IepintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IepintR { bits }
+            }
+            # [ doc = "Bits 16:31 - OUT endpoint interrupt bits" ]
+            # [ inline ( always ) ]
+            pub fn oepint(&self) -> OepintR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                OepintR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS all endpoints interrupt mask register" ]
+    pub struct OtgHsDaintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS all endpoints interrupt mask register" ]
+    pub mod otg_hs_daintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDaintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IepmR {
+            bits: u16,
+        }
+        impl IepmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OepmR {
+            bits: u16,
+        }
+        impl OepmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IepmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IepmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OepmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OepmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn iepm(&self) -> IepmR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IepmR { bits }
+            }
+            # [ doc = "Bits 16:31 - OUT EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn oepm(&self) -> OepmR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                OepmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn iepm(&mut self) -> _IepmW {
+                _IepmW { w: self }
+            }
+            # [ doc = "Bits 16:31 - OUT EP interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn oepm(&mut self) -> _OepmW {
+                _OepmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device VBUS discharge time register" ]
+    pub struct OtgHsDvbusdis {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device VBUS discharge time register" ]
+    pub mod otg_hs_dvbusdis {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDvbusdis {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct VbusdtR {
+            bits: u16,
+        }
+        impl VbusdtR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _VbusdtW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _VbusdtW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - Device VBUS discharge time" ]
+            # [ inline ( always ) ]
+            pub fn vbusdt(&self) -> VbusdtR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                VbusdtR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 6103 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - Device VBUS discharge time" ]
+            # [ inline ( always ) ]
+            pub fn vbusdt(&mut self) -> _VbusdtW {
+                _VbusdtW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device VBUS pulsing time register" ]
+    pub struct OtgHsDvbuspulse {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device VBUS pulsing time register" ]
+    pub mod otg_hs_dvbuspulse {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDvbuspulse {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DvbuspR {
+            bits: u16,
+        }
+        impl DvbuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DvbuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DvbuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 4095;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:11 - Device VBUS pulsing time" ]
+            # [ inline ( always ) ]
+            pub fn dvbusp(&self) -> DvbuspR {
+                let bits = {
+                    const MASK: u16 = 4095;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                DvbuspR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 1464 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:11 - Device VBUS pulsing time" ]
+            # [ inline ( always ) ]
+            pub fn dvbusp(&mut self) -> _DvbuspW {
+                _DvbuspW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS Device threshold control register" ]
+    pub struct OtgHsDthrctl {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS Device threshold control register" ]
+    pub mod otg_hs_dthrctl {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDthrctl {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NonisothrenR {
+            bits: u8,
+        }
+        impl NonisothrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IsothrenR {
+            bits: u8,
+        }
+        impl IsothrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxthrlenR {
+            bits: u16,
+        }
+        impl TxthrlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxthrenR {
+            bits: u8,
+        }
+        impl RxthrenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxthrlenR {
+            bits: u16,
+        }
+        impl RxthrlenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct ArpenR {
+            bits: u8,
+        }
+        impl ArpenR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NonisothrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NonisothrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IsothrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IsothrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxthrlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxthrlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 2;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxthrenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxthrenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 16;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxthrlenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxthrlenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 511;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _ArpenW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _ArpenW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Nonisochronous IN endpoints threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn nonisothren(&self) -> NonisothrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NonisothrenR { bits }
+            }
+            # [ doc = "Bit 1 - ISO IN endpoint threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn isothren(&self) -> IsothrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IsothrenR { bits }
+            }
+            # [ doc = "Bits 2:10 - Transmit threshold length" ]
+            # [ inline ( always ) ]
+            pub fn txthrlen(&self) -> TxthrlenR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 2;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                TxthrlenR { bits }
+            }
+            # [ doc = "Bit 16 - Receive threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn rxthren(&self) -> RxthrenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxthrenR { bits }
+            }
+            # [ doc = "Bits 17:25 - Receive threshold length" ]
+            # [ inline ( always ) ]
+            pub fn rxthrlen(&self) -> RxthrlenR {
+                let bits = {
+                    const MASK: u16 = 511;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                RxthrlenR { bits }
+            }
+            # [ doc = "Bit 27 - Arbiter parking enable" ]
+            # [ inline ( always ) ]
+            pub fn arpen(&self) -> ArpenR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 27;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                ArpenR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Nonisochronous IN endpoints threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn nonisothren(&mut self) -> _NonisothrenW {
+                _NonisothrenW { w: self }
+            }
+            # [ doc = "Bit 1 - ISO IN endpoint threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn isothren(&mut self) -> _IsothrenW {
+                _IsothrenW { w: self }
+            }
+            # [ doc = "Bits 2:10 - Transmit threshold length" ]
+            # [ inline ( always ) ]
+            pub fn txthrlen(&mut self) -> _TxthrlenW {
+                _TxthrlenW { w: self }
+            }
+            # [ doc = "Bit 16 - Receive threshold enable" ]
+            # [ inline ( always ) ]
+            pub fn rxthren(&mut self) -> _RxthrenW {
+                _RxthrenW { w: self }
+            }
+            # [ doc = "Bits 17:25 - Receive threshold length" ]
+            # [ inline ( always ) ]
+            pub fn rxthrlen(&mut self) -> _RxthrlenW {
+                _RxthrlenW { w: self }
+            }
+            # [ doc = "Bit 27 - Arbiter parking enable" ]
+            # [ inline ( always ) ]
+            pub fn arpen(&mut self) -> _ArpenW {
+                _ArpenW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint FIFO empty interrupt mask register" ]
+    pub struct OtgHsDiepempmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint FIFO empty interrupt mask register" ]
+    pub mod otg_hs_diepempmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepempmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptxfemR {
+            bits: u16,
+        }
+        impl IneptxfemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IneptxfemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IneptxfemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 65535;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfem(&self) -> IneptxfemR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptxfemR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:15 - IN EP Tx FIFO empty interrupt mask bits" ]
+            # [ inline ( always ) ]
+            pub fn ineptxfem(&mut self) -> _IneptxfemW {
+                _IneptxfemW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device each endpoint interrupt register" ]
+    pub struct OtgHsDeachint {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device each endpoint interrupt register" ]
+    pub mod otg_hs_deachint {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDeachint {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Iep1intR {
+            bits: u8,
+        }
+        impl Iep1intR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oep1intR {
+            bits: u8,
+        }
+        impl Oep1intR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Iep1intW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Iep1intW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oep1intW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oep1intW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - IN endpoint 1interrupt bit" ]
+            # [ inline ( always ) ]
+            pub fn iep1int(&self) -> Iep1intR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Iep1intR { bits }
+            }
+            # [ doc = "Bit 17 - OUT endpoint 1 interrupt bit" ]
+            # [ inline ( always ) ]
+            pub fn oep1int(&self) -> Oep1intR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oep1intR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - IN endpoint 1interrupt bit" ]
+            # [ inline ( always ) ]
+            pub fn iep1int(&mut self) -> _Iep1intW {
+                _Iep1intW { w: self }
+            }
+            # [ doc = "Bit 17 - OUT endpoint 1 interrupt bit" ]
+            # [ inline ( always ) ]
+            pub fn oep1int(&mut self) -> _Oep1intW {
+                _Oep1intW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device each endpoint interrupt register mask" ]
+    pub struct OtgHsDeachintmsk {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device each endpoint interrupt register mask" ]
+    pub mod otg_hs_deachintmsk {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDeachintmsk {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Iep1intmR {
+            bits: u8,
+        }
+        impl Iep1intmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct Oep1intmR {
+            bits: u8,
+        }
+        impl Oep1intmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Iep1intmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Iep1intmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Oep1intmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Oep1intmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 17;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 1 - IN Endpoint 1 interrupt mask bit" ]
+            # [ inline ( always ) ]
+            pub fn iep1intm(&self) -> Iep1intmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Iep1intmR { bits }
+            }
+            # [ doc = "Bit 17 - OUT Endpoint 1 interrupt mask bit" ]
+            # [ inline ( always ) ]
+            pub fn oep1intm(&self) -> Oep1intmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                Oep1intmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 1 - IN Endpoint 1 interrupt mask bit" ]
+            # [ inline ( always ) ]
+            pub fn iep1intm(&mut self) -> _Iep1intmW {
+                _Iep1intmW { w: self }
+            }
+            # [ doc = "Bit 17 - OUT Endpoint 1 interrupt mask bit" ]
+            # [ inline ( always ) ]
+            pub fn oep1intm(&mut self) -> _Oep1intmW {
+                _Oep1intmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device each in endpoint-1 interrupt register" ]
+    pub struct OtgHsDiepeachmsk1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device each in endpoint-1 interrupt register" ]
+    pub mod otg_hs_diepeachmsk1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepeachmsk1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TomR {
+            bits: u8,
+        }
+        impl TomR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfemskR {
+            bits: u8,
+        }
+        impl IttxfemskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnmmR {
+            bits: u8,
+        }
+        impl InepnmmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnemR {
+            bits: u8,
+        }
+        impl InepnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfurmR {
+            bits: u8,
+        }
+        impl TxfurmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BimR {
+            bits: u8,
+        }
+        impl BimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TomW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TomW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfemskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfemskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnmmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnmmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfurmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfurmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&self) -> TomR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TomR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&self) -> IttxfemskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfemskR { bits }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&self) -> InepnmmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnmmR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&self) -> InepnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnemR { bits }
+            }
+            # [ doc = "Bit 8 - FIFO underrun mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&self) -> TxfurmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfurmR { bits }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&self) -> BimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BimR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask (nonisochronous endpoints)" ]
+            # [ inline ( always ) ]
+            pub fn tom(&mut self) -> _TomW {
+                _TomW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&mut self) -> _IttxfemskW {
+                _IttxfemskW { w: self }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&mut self) -> _InepnmmW {
+                _InepnmmW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&mut self) -> _InepnemW {
+                _InepnemW { w: self }
+            }
+            # [ doc = "Bit 8 - FIFO underrun mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&mut self) -> _TxfurmW {
+                _TxfurmW { w: self }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&mut self) -> _BimW {
+                _BimW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device each OUT endpoint-1 interrupt register" ]
+    pub struct OtgHsDoepeachmsk1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device each OUT endpoint-1 interrupt register" ]
+    pub mod otg_hs_doepeachmsk1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepeachmsk1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcmR {
+            bits: u8,
+        }
+        impl XfrcmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdmR {
+            bits: u8,
+        }
+        impl EpdmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TomR {
+            bits: u8,
+        }
+        impl TomR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfemskR {
+            bits: u8,
+        }
+        impl IttxfemskR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnmmR {
+            bits: u8,
+        }
+        impl InepnmmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepnemR {
+            bits: u8,
+        }
+        impl InepnemR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfurmR {
+            bits: u8,
+        }
+        impl TxfurmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BimR {
+            bits: u8,
+        }
+        impl BimR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrmR {
+            bits: u8,
+        }
+        impl BerrmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakmR {
+            bits: u8,
+        }
+        impl NakmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetmR {
+            bits: u8,
+        }
+        impl NyetmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TomW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TomW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfemskW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfemskW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnmmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnmmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 5;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepnemW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepnemW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfurmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfurmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BimW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BimW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&self) -> XfrcmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcmR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&self) -> EpdmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdmR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask" ]
+            # [ inline ( always ) ]
+            pub fn tom(&self) -> TomR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TomR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&self) -> IttxfemskR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfemskR { bits }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&self) -> InepnmmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 5;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnmmR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&self) -> InepnemR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepnemR { bits }
+            }
+            # [ doc = "Bit 8 - OUT packet error mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&self) -> TxfurmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfurmR { bits }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&self) -> BimR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BimR { bits }
+            }
+            # [ doc = "Bit 12 - Bubble error interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn berrm(&self) -> BerrmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrmR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&self) -> NakmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakmR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyetm(&self) -> NyetmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetmR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn xfrcm(&mut self) -> _XfrcmW {
+                _XfrcmW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn epdm(&mut self) -> _EpdmW {
+                _EpdmW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition mask" ]
+            # [ inline ( always ) ]
+            pub fn tom(&mut self) -> _TomW {
+                _TomW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO empty mask" ]
+            # [ inline ( always ) ]
+            pub fn ittxfemsk(&mut self) -> _IttxfemskW {
+                _IttxfemskW { w: self }
+            }
+            # [ doc = "Bit 5 - IN token received with EP mismatch mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnmm(&mut self) -> _InepnmmW {
+                _InepnmmW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective mask" ]
+            # [ inline ( always ) ]
+            pub fn inepnem(&mut self) -> _InepnemW {
+                _InepnemW { w: self }
+            }
+            # [ doc = "Bit 8 - OUT packet error mask" ]
+            # [ inline ( always ) ]
+            pub fn txfurm(&mut self) -> _TxfurmW {
+                _TxfurmW { w: self }
+            }
+            # [ doc = "Bit 9 - BNA interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn bim(&mut self) -> _BimW {
+                _BimW { w: self }
+            }
+            # [ doc = "Bit 12 - Bubble error interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn berrm(&mut self) -> _BerrmW {
+                _BerrmW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nakm(&mut self) -> _NakmW {
+                _NakmW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt mask" ]
+            # [ inline ( always ) ]
+            pub fn nyetm(&mut self) -> _NyetmW {
+                _NyetmW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-0 control register" ]
+    pub struct OtgHsDiepctl0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-0 control register" ]
+    pub mod otg_hs_diepctl0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub struct OtgHsDiepctl1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub mod otg_hs_diepctl1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub struct OtgHsDiepctl2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub mod otg_hs_diepctl2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub struct OtgHsDiepctl3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub mod otg_hs_diepctl3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-4 control register" ]
+    pub struct OtgHsDiepctl4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-4 control register" ]
+    pub mod otg_hs_diepctl4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-5 control register" ]
+    pub struct OtgHsDiepctl5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-5 control register" ]
+    pub mod otg_hs_diepctl5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-6 control register" ]
+    pub struct OtgHsDiepctl6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-6 control register" ]
+    pub mod otg_hs_diepctl6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-7 control register" ]
+    pub struct OtgHsDiepctl7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-7 control register" ]
+    pub mod otg_hs_diepctl7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepctl7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfnumR {
+            bits: u8,
+        }
+        impl TxfnumR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfnumW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfnumW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 15;
+                const OFFSET: u8 = 22;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even/odd frame" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&self) -> TxfnumR {
+                let bits = {
+                    const MASK: u8 = 15;
+                    const OFFSET: u8 = 22;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfnumR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bits 22:25 - TxFIFO number" ]
+            # [ inline ( always ) ]
+            pub fn txfnum(&mut self) -> _TxfnumW {
+                _TxfnumW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-0 interrupt register" ]
+    pub struct OtgHsDiepint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-0 interrupt register" ]
+    pub mod otg_hs_diepint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-1 interrupt register" ]
+    pub struct OtgHsDiepint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-1 interrupt register" ]
+    pub mod otg_hs_diepint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-2 interrupt register" ]
+    pub struct OtgHsDiepint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-2 interrupt register" ]
+    pub mod otg_hs_diepint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-3 interrupt register" ]
+    pub struct OtgHsDiepint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-3 interrupt register" ]
+    pub mod otg_hs_diepint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-4 interrupt register" ]
+    pub struct OtgHsDiepint4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-4 interrupt register" ]
+    pub mod otg_hs_diepint4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-5 interrupt register" ]
+    pub struct OtgHsDiepint5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-5 interrupt register" ]
+    pub mod otg_hs_diepint5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-6 interrupt register" ]
+    pub struct OtgHsDiepint6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-6 interrupt register" ]
+    pub mod otg_hs_diepint6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-7 interrupt register" ]
+    pub struct OtgHsDiepint7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-7 interrupt register" ]
+    pub mod otg_hs_diepint7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepint7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TocR {
+            bits: u8,
+        }
+        impl TocR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IttxfeR {
+            bits: u8,
+        }
+        impl IttxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct InepneR {
+            bits: u8,
+        }
+        impl InepneR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfeR {
+            bits: u8,
+        }
+        impl TxfeR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct TxfifoudrnR {
+            bits: u8,
+        }
+        impl TxfifoudrnR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BnaR {
+            bits: u8,
+        }
+        impl BnaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktdrpstsR {
+            bits: u8,
+        }
+        impl PktdrpstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct BerrR {
+            bits: u8,
+        }
+        impl BerrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakR {
+            bits: u8,
+        }
+        impl NakR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TocW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TocW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _IttxfeW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _IttxfeW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _InepneW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _InepneW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _TxfifoudrnW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _TxfifoudrnW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 8;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BnaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BnaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 9;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktdrpstsW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktdrpstsW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 11;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _BerrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _BerrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 12;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 13;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&self) -> TocR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TocR { bits }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&self) -> IttxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                IttxfeR { bits }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&self) -> InepneR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                InepneR { bits }
+            }
+            # [ doc = "Bit 7 - Transmit FIFO empty" ]
+            # [ inline ( always ) ]
+            pub fn txfe(&self) -> TxfeR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 7;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfeR { bits }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&self) -> TxfifoudrnR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 8;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                TxfifoudrnR { bits }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&self) -> BnaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 9;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BnaR { bits }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&self) -> PktdrpstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 11;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktdrpstsR { bits }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&self) -> BerrR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 12;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                BerrR { bits }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&self) -> NakR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 13;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - Timeout condition" ]
+            # [ inline ( always ) ]
+            pub fn toc(&mut self) -> _TocW {
+                _TocW { w: self }
+            }
+            # [ doc = "Bit 4 - IN token received when TxFIFO is empty" ]
+            # [ inline ( always ) ]
+            pub fn ittxfe(&mut self) -> _IttxfeW {
+                _IttxfeW { w: self }
+            }
+            # [ doc = "Bit 6 - IN endpoint NAK effective" ]
+            # [ inline ( always ) ]
+            pub fn inepne(&mut self) -> _InepneW {
+                _InepneW { w: self }
+            }
+            # [ doc = "Bit 8 - Transmit Fifo Underrun" ]
+            # [ inline ( always ) ]
+            pub fn txfifoudrn(&mut self) -> _TxfifoudrnW {
+                _TxfifoudrnW { w: self }
+            }
+            # [ doc = "Bit 9 - Buffer not available interrupt" ]
+            # [ inline ( always ) ]
+            pub fn bna(&mut self) -> _BnaW {
+                _BnaW { w: self }
+            }
+            # [ doc = "Bit 11 - Packet dropped status" ]
+            # [ inline ( always ) ]
+            pub fn pktdrpsts(&mut self) -> _PktdrpstsW {
+                _PktdrpstsW { w: self }
+            }
+            # [ doc = "Bit 12 - Babble error interrupt" ]
+            # [ inline ( always ) ]
+            pub fn berr(&mut self) -> _BerrW {
+                _BerrW { w: self }
+            }
+            # [ doc = "Bit 13 - NAK interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nak(&mut self) -> _NakW {
+                _NakW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint 0 transfer size register" ]
+    pub struct OtgHsDieptsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint 0 transfer size register" ]
+    pub mod otg_hs_dieptsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u8,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u8,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:20 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:20 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-1 DMA address register" ]
+    pub struct OtgHsDiepdma1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-1 DMA address register" ]
+    pub mod otg_hs_diepdma1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepdma1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-2 DMA address register" ]
+    pub struct OtgHsDiepdma2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-2 DMA address register" ]
+    pub mod otg_hs_diepdma2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepdma2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-3 DMA address register" ]
+    pub struct OtgHsDiepdma3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-3 DMA address register" ]
+    pub mod otg_hs_diepdma3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepdma3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-4 DMA address register" ]
+    pub struct OtgHsDiepdma4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-4 DMA address register" ]
+    pub mod otg_hs_diepdma4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepdma4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-5 DMA address register" ]
+    pub struct OtgHsDiepdma5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-5 DMA address register" ]
+    pub mod otg_hs_diepdma5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDiepdma5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct DmaaddrR {
+            bits: u32,
+        }
+        impl DmaaddrR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _DmaaddrW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _DmaaddrW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 4294967295;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&self) -> DmaaddrR {
+                let bits = {
+                    const MASK: u32 = 4294967295;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                DmaaddrR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:31 - DMA address" ]
+            # [ inline ( always ) ]
+            pub fn dmaaddr(&mut self) -> _DmaaddrW {
+                _DmaaddrW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts0 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts1 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts2 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts3 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts4 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub struct OtgHsDtxfsts5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device IN endpoint transmit FIFO status register" ]
+    pub mod otg_hs_dtxfsts5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        impl super::OtgHsDtxfsts5 {
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct IneptfsavR {
+            bits: u16,
+        }
+        impl IneptfsavR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:15 - IN endpoint TxFIFO space avail" ]
+            # [ inline ( always ) ]
+            pub fn ineptfsav(&self) -> IneptfsavR {
+                let bits = {
+                    const MASK: u16 = 65535;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                IneptfsavR { bits }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub struct OtgHsDieptsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub mod otg_hs_dieptsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub struct OtgHsDieptsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub mod otg_hs_dieptsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub struct OtgHsDieptsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub mod otg_hs_dieptsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub struct OtgHsDieptsiz4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub mod otg_hs_dieptsiz4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub struct OtgHsDieptsiz5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint transfer size register" ]
+    pub mod otg_hs_dieptsiz5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDieptsiz5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct McntR {
+            bits: u8,
+        }
+        impl McntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _McntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _McntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&self) -> McntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                McntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Multi count" ]
+            # [ inline ( always ) ]
+            pub fn mcnt(&mut self) -> _McntW {
+                _McntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device control OUT endpoint 0 control register" ]
+    pub struct OtgHsDoepctl0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device control OUT endpoint 0 control register" ]
+    pub mod otg_hs_doepctl0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepctl0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u8,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:1 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 32768 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub struct OtgHsDoepctl1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-1 control register" ]
+    pub mod otg_hs_doepctl1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepctl1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub struct OtgHsDoepctl2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-2 control register" ]
+    pub mod otg_hs_doepctl2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepctl2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub struct OtgHsDoepctl3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG device endpoint-3 control register" ]
+    pub mod otg_hs_doepctl3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepctl3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct MpsizR {
+            bits: u16,
+        }
+        impl MpsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct UsbaepR {
+            bits: u8,
+        }
+        impl UsbaepR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EonumDpidR {
+            bits: u8,
+        }
+        impl EonumDpidR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NakstsR {
+            bits: u8,
+        }
+        impl NakstsR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EptypR {
+            bits: u8,
+        }
+        impl EptypR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct SnpmR {
+            bits: u8,
+        }
+        impl SnpmR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StallR {
+            bits: u8,
+        }
+        impl StallR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisR {
+            bits: u8,
+        }
+        impl EpdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpenaR {
+            bits: u8,
+        }
+        impl EpenaR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _MpsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _MpsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 2047;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _UsbaepW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _UsbaepW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 15;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EptypW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EptypW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 18;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnpmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnpmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 20;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StallW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StallW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 21;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _CnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _CnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 26;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SnakW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SnakW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 27;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _Sd0pidSevnfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _Sd0pidSevnfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 28;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _SoddfrmW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _SoddfrmW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 30;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpenaW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpenaW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 31;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&self) -> MpsizR {
+                let bits = {
+                    const MASK: u16 = 2047;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                MpsizR { bits }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&self) -> UsbaepR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 15;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                UsbaepR { bits }
+            }
+            # [ doc = "Bit 16 - Even odd frame/Endpoint data PID" ]
+            # [ inline ( always ) ]
+            pub fn eonum_dpid(&self) -> EonumDpidR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 16;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EonumDpidR { bits }
+            }
+            # [ doc = "Bit 17 - NAK status" ]
+            # [ inline ( always ) ]
+            pub fn naksts(&self) -> NakstsR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 17;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NakstsR { bits }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&self) -> EptypR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 18;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EptypR { bits }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&self) -> SnpmR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 20;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                SnpmR { bits }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&self) -> StallR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 21;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StallR { bits }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&self) -> EpdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 30;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisR { bits }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&self) -> EpenaR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 31;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpenaR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:10 - Maximum packet size" ]
+            # [ inline ( always ) ]
+            pub fn mpsiz(&mut self) -> _MpsizW {
+                _MpsizW { w: self }
+            }
+            # [ doc = "Bit 15 - USB active endpoint" ]
+            # [ inline ( always ) ]
+            pub fn usbaep(&mut self) -> _UsbaepW {
+                _UsbaepW { w: self }
+            }
+            # [ doc = "Bits 18:19 - Endpoint type" ]
+            # [ inline ( always ) ]
+            pub fn eptyp(&mut self) -> _EptypW {
+                _EptypW { w: self }
+            }
+            # [ doc = "Bit 20 - Snoop mode" ]
+            # [ inline ( always ) ]
+            pub fn snpm(&mut self) -> _SnpmW {
+                _SnpmW { w: self }
+            }
+            # [ doc = "Bit 21 - STALL handshake" ]
+            # [ inline ( always ) ]
+            pub fn stall(&mut self) -> _StallW {
+                _StallW { w: self }
+            }
+            # [ doc = "Bit 26 - Clear NAK" ]
+            # [ inline ( always ) ]
+            pub fn cnak(&mut self) -> _CnakW {
+                _CnakW { w: self }
+            }
+            # [ doc = "Bit 27 - Set NAK" ]
+            # [ inline ( always ) ]
+            pub fn snak(&mut self) -> _SnakW {
+                _SnakW { w: self }
+            }
+            # [ doc = "Bit 28 - Set DATA0 PID/Set even frame" ]
+            # [ inline ( always ) ]
+            pub fn sd0pid_sevnfrm(&mut self) -> _Sd0pidSevnfrmW {
+                _Sd0pidSevnfrmW { w: self }
+            }
+            # [ doc = "Bit 29 - Set odd frame" ]
+            # [ inline ( always ) ]
+            pub fn soddfrm(&mut self) -> _SoddfrmW {
+                _SoddfrmW { w: self }
+            }
+            # [ doc = "Bit 30 - Endpoint disable" ]
+            # [ inline ( always ) ]
+            pub fn epdis(&mut self) -> _EpdisW {
+                _EpdisW { w: self }
+            }
+            # [ doc = "Bit 31 - Endpoint enable" ]
+            # [ inline ( always ) ]
+            pub fn epena(&mut self) -> _EpenaW {
+                _EpenaW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-0 interrupt register" ]
+    pub struct OtgHsDoepint0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-0 interrupt register" ]
+    pub mod otg_hs_doepint0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 128 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-1 interrupt register" ]
+    pub struct OtgHsDoepint1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-1 interrupt register" ]
+    pub mod otg_hs_doepint1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-2 interrupt register" ]
+    pub struct OtgHsDoepint2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-2 interrupt register" ]
+    pub mod otg_hs_doepint2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-3 interrupt register" ]
+    pub struct OtgHsDoepint3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-3 interrupt register" ]
+    pub mod otg_hs_doepint3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-4 interrupt register" ]
+    pub struct OtgHsDoepint4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-4 interrupt register" ]
+    pub mod otg_hs_doepint4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-5 interrupt register" ]
+    pub struct OtgHsDoepint5 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-5 interrupt register" ]
+    pub mod otg_hs_doepint5 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint5 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-6 interrupt register" ]
+    pub struct OtgHsDoepint6 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-6 interrupt register" ]
+    pub mod otg_hs_doepint6 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint6 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-7 interrupt register" ]
+    pub struct OtgHsDoepint7 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-7 interrupt register" ]
+    pub mod otg_hs_doepint7 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoepint7 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrcR {
+            bits: u8,
+        }
+        impl XfrcR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct EpdisdR {
+            bits: u8,
+        }
+        impl EpdisdR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupR {
+            bits: u8,
+        }
+        impl StupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct OtepdisR {
+            bits: u8,
+        }
+        impl OtepdisR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct B2bstupR {
+            bits: u8,
+        }
+        impl B2bstupR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct NyetR {
+            bits: u8,
+        }
+        impl NyetR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrcW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrcW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _EpdisdW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _EpdisdW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 3;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _OtepdisW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _OtepdisW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _B2bstupW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _B2bstupW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 6;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _NyetW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _NyetW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 14;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&self) -> XfrcR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrcR { bits }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&self) -> EpdisdR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                EpdisdR { bits }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&self) -> StupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 3;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupR { bits }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&self) -> OtepdisR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                OtepdisR { bits }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&self) -> B2bstupR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 6;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                B2bstupR { bits }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&self) -> NyetR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 14;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                NyetR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Transfer completed interrupt" ]
+            # [ inline ( always ) ]
+            pub fn xfrc(&mut self) -> _XfrcW {
+                _XfrcW { w: self }
+            }
+            # [ doc = "Bit 1 - Endpoint disabled interrupt" ]
+            # [ inline ( always ) ]
+            pub fn epdisd(&mut self) -> _EpdisdW {
+                _EpdisdW { w: self }
+            }
+            # [ doc = "Bit 3 - SETUP phase done" ]
+            # [ inline ( always ) ]
+            pub fn stup(&mut self) -> _StupW {
+                _StupW { w: self }
+            }
+            # [ doc = "Bit 4 - OUT token received when endpoint disabled" ]
+            # [ inline ( always ) ]
+            pub fn otepdis(&mut self) -> _OtepdisW {
+                _OtepdisW { w: self }
+            }
+            # [ doc = "Bit 6 - Back-to-back SETUP packets received" ]
+            # [ inline ( always ) ]
+            pub fn b2bstup(&mut self) -> _B2bstupW {
+                _B2bstupW { w: self }
+            }
+            # [ doc = "Bit 14 - NYET interrupt" ]
+            # [ inline ( always ) ]
+            pub fn nyet(&mut self) -> _NyetW {
+                _NyetW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-1 transfer size register" ]
+    pub struct OtgHsDoeptsiz0 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-1 transfer size register" ]
+    pub mod otg_hs_doeptsiz0 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoeptsiz0 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u8,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u8,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StupcntR {
+            bits: u8,
+        }
+        impl StupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 127;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u8 = 127;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bit 19 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn stupcnt(&self) -> StupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StupcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:6 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bit 19 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn stupcnt(&mut self) -> _StupcntW {
+                _StupcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-2 transfer size register" ]
+    pub struct OtgHsDoeptsiz1 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-2 transfer size register" ]
+    pub mod otg_hs_doeptsiz1 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoeptsiz1 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-3 transfer size register" ]
+    pub struct OtgHsDoeptsiz2 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-3 transfer size register" ]
+    pub mod otg_hs_doeptsiz2 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoeptsiz2 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-4 transfer size register" ]
+    pub struct OtgHsDoeptsiz3 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-4 transfer size register" ]
+    pub mod otg_hs_doeptsiz3 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoeptsiz3 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+        }
+    }
+    # [ doc = "OTG_HS device endpoint-5 transfer size register" ]
+    pub struct OtgHsDoeptsiz4 {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "OTG_HS device endpoint-5 transfer size register" ]
+    pub mod otg_hs_doeptsiz4 {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsDoeptsiz4 {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct XfrsizR {
+            bits: u32,
+        }
+        impl XfrsizR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PktcntR {
+            bits: u16,
+        }
+        impl PktcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u16 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct RxdpidStupcntR {
+            bits: u8,
+        }
+        impl RxdpidStupcntR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _XfrsizW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _XfrsizW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u32) -> &'a mut W {
+                const MASK: u32 = 524287;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PktcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PktcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u16) -> &'a mut W {
+                const MASK: u16 = 1023;
+                const OFFSET: u8 = 19;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _RxdpidStupcntW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _RxdpidStupcntW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 3;
+                const OFFSET: u8 = 29;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&self) -> XfrsizR {
+                let bits = {
+                    const MASK: u32 = 524287;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u32
+                };
+                XfrsizR { bits }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&self) -> PktcntR {
+                let bits = {
+                    const MASK: u16 = 1023;
+                    const OFFSET: u8 = 19;
+                    ((self.bits >> OFFSET) & MASK as u32) as u16
+                };
+                PktcntR { bits }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&self) -> RxdpidStupcntR {
+                let bits = {
+                    const MASK: u8 = 3;
+                    const OFFSET: u8 = 29;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                RxdpidStupcntR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bits 0:18 - Transfer size" ]
+            # [ inline ( always ) ]
+            pub fn xfrsiz(&mut self) -> _XfrsizW {
+                _XfrsizW { w: self }
+            }
+            # [ doc = "Bits 19:28 - Packet count" ]
+            # [ inline ( always ) ]
+            pub fn pktcnt(&mut self) -> _PktcntW {
+                _PktcntW { w: self }
+            }
+            # [ doc = "Bits 29:30 - Received data PID/SETUP packet count" ]
+            # [ inline ( always ) ]
+            pub fn rxdpid_stupcnt(&mut self) -> _RxdpidStupcntW {
+                _RxdpidStupcntW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub struct OtgHsDevice {
+    register_block: otg_hs_device::RegisterBlock,
+}
+impl Deref for OtgHsDevice {
+    type Target = otg_hs_device::RegisterBlock;
+    fn deref(&self) -> &otg_hs_device::RegisterBlock {
+        &self.register_block
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub const OTG_HS_PWRCLK: Peripheral<OtgHsPwrclk> =
+    unsafe { Peripheral::new(1074007552) };
+# [ doc = "USB on the go high speed" ]
+pub mod otg_hs_pwrclk {
+    use vcell::VolatileCell;
+    # [ doc = r" Register block" ]
+    # [ repr ( C ) ]
+    pub struct RegisterBlock {
+        # [ doc = "0x00 - Power and clock gating control register" ]
+        pub otg_hs_pcgcr: OtgHsPcgcr,
+    }
+    # [ doc = "Power and clock gating control register" ]
+    pub struct OtgHsPcgcr {
+        register: VolatileCell<u32>,
+    }
+    # [ doc = "Power and clock gating control register" ]
+    pub mod otg_hs_pcgcr {
+        # [ doc = r" Value read from the register" ]
+        pub struct R {
+            bits: u32,
+        }
+        # [ doc = r" Value to write to the register" ]
+        pub struct W {
+            bits: u32,
+        }
+        impl super::OtgHsPcgcr {
+            # [ doc = r" Modifies the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn modify<F>(&self, f: F)
+            where
+                for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
+            {
+                let bits = self.register.get();
+                let r = R { bits: bits };
+                let mut w = W { bits: bits };
+                f(&r, &mut w);
+                self.register.set(w.bits);
+            }
+            # [ doc = r" Reads the contents of the register" ]
+            # [ inline ( always ) ]
+            pub fn read(&self) -> R {
+                R { bits: self.register.get() }
+            }
+            # [ doc = r" Writes to the register" ]
+            # [ inline ( always ) ]
+            pub fn write<F>(&self, f: F)
+            where
+                F: FnOnce(&mut W) -> &mut W,
+            {
+                let mut w = W::reset_value();
+                f(&mut w);
+                self.register.set(w.bits);
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct StppclkR {
+            bits: u8,
+        }
+        impl StppclkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct GatehclkR {
+            bits: u8,
+        }
+        impl GatehclkR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Value of the field" ]
+        pub struct PhysuspR {
+            bits: u8,
+        }
+        impl PhysuspR {
+            # [ doc = r" Value of the field as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u8 {
+                self.bits
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _StppclkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _StppclkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 0;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _GatehclkW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _GatehclkW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 1;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        # [ doc = r" Proxy" ]
+        pub struct _PhysuspW<'a> {
+            w: &'a mut W,
+        }
+        impl<'a> _PhysuspW<'a> {
+            # [ doc = r" Writes raw bits to the field" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(self, bits: u8) -> &'a mut W {
+                const MASK: u8 = 1;
+                const OFFSET: u8 = 4;
+                self.w.bits &= !((MASK as u32) << OFFSET);
+                self.w.bits |= ((bits & MASK) as u32) << OFFSET;
+                self.w
+            }
+        }
+        impl R {
+            # [ doc = r" Value of the register as raw bits" ]
+            # [ inline ( always ) ]
+            pub fn bits(&self) -> u32 {
+                self.bits
+            }
+            # [ doc = "Bit 0 - Stop PHY clock" ]
+            # [ inline ( always ) ]
+            pub fn stppclk(&self) -> StppclkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 0;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                StppclkR { bits }
+            }
+            # [ doc = "Bit 1 - Gate HCLK" ]
+            # [ inline ( always ) ]
+            pub fn gatehclk(&self) -> GatehclkR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 1;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                GatehclkR { bits }
+            }
+            # [ doc = "Bit 4 - PHY suspended" ]
+            # [ inline ( always ) ]
+            pub fn physusp(&self) -> PhysuspR {
+                let bits = {
+                    const MASK: u8 = 1;
+                    const OFFSET: u8 = 4;
+                    ((self.bits >> OFFSET) & MASK as u32) as u8
+                };
+                PhysuspR { bits }
+            }
+        }
+        impl W {
+            # [ doc = r" Reset value of the register" ]
+            # [ inline ( always ) ]
+            pub fn reset_value() -> W {
+                W { bits: 0 }
+            }
+            # [ doc = r" Writes raw bits to the register" ]
+            # [ inline ( always ) ]
+            pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
+                self.bits = bits;
+                self
+            }
+            # [ doc = "Bit 0 - Stop PHY clock" ]
+            # [ inline ( always ) ]
+            pub fn stppclk(&mut self) -> _StppclkW {
+                _StppclkW { w: self }
+            }
+            # [ doc = "Bit 1 - Gate HCLK" ]
+            # [ inline ( always ) ]
+            pub fn gatehclk(&mut self) -> _GatehclkW {
+                _GatehclkW { w: self }
+            }
+            # [ doc = "Bit 4 - PHY suspended" ]
+            # [ inline ( always ) ]
+            pub fn physusp(&mut self) -> _PhysuspW {
+                _PhysuspW { w: self }
+            }
+        }
+    }
+}
+# [ doc = "USB on the go high speed" ]
+pub struct OtgHsPwrclk {
+    register_block: otg_hs_pwrclk::RegisterBlock,
+}
+impl Deref for OtgHsPwrclk {
+    type Target = otg_hs_pwrclk::RegisterBlock;
+    fn deref(&self) -> &otg_hs_pwrclk::RegisterBlock {
+        &self.register_block
+    }
+}